From 53542bd4c0cf0f6bc288a412f37864d60a1fea57 Mon Sep 17 00:00:00 2001 From: mtrezza Date: Mon, 8 Apr 2024 14:55:36 +0000 Subject: [PATCH] deploy: 872337ad782c0b52578114f10cf0895142b8915e --- api/Classes.html | 32 +- api/Classes/PFACL.html | 29 +- api/Classes/PFAnalytics.html | 43 +- api/Classes/PFAnonymousUtils.html | 33 +- api/Classes/PFCloud.html | 30 +- api/Classes/PFConfig.html | 35 +- api/Classes/PFFileObject.html | 71 ++-- api/Classes/PFGeoPoint.html | 27 +- api/Classes/PFInstallation.html | 27 +- api/Classes/PFObject.html | 278 ++++++------ api/Classes/PFPolygon.html | 25 +- api/Classes/PFPush.html | 53 ++- api/Classes/PFQuery.html | 93 ++-- api/Classes/PFRelation.html | 23 +- api/Classes/PFRole.html | 23 +- api/Classes/PFSession.html | 21 +- api/Classes/PFUser.html | 124 +++--- api/Classes/Parse.html | 27 +- api/Classes/ParseClientConfiguration.html | 29 +- api/Constants.html | 27 +- api/Enums.html | 25 +- api/Enums/PFCachePolicy.html | 19 +- api/Enums/PFErrorCode.html | 121 +----- api/Enums/PFLogLevel.html | 19 +- api/Protocols.html | 19 +- api/Protocols/PFFileUploadController.html | 23 +- api/Protocols/PFSubclassing.html | 21 +- .../PFUserAuthenticationDelegate.html | 19 +- .../ParseMutableClientConfiguration.html | 27 +- api/Type Definitions.html | 19 +- api/badge.svg | 4 +- api/css/highlight.css | 400 +++++++++--------- api/css/jazzy.css | 13 +- .../Contents/Resources/Documents/Classes.html | 32 +- .../Resources/Documents/Classes/PFACL.html | 29 +- .../Documents/Classes/PFAnalytics.html | 43 +- .../Documents/Classes/PFAnonymousUtils.html | 33 +- .../Resources/Documents/Classes/PFCloud.html | 30 +- .../Resources/Documents/Classes/PFConfig.html | 35 +- .../Documents/Classes/PFFileObject.html | 71 ++-- .../Documents/Classes/PFGeoPoint.html | 27 +- .../Documents/Classes/PFInstallation.html | 27 +- .../Resources/Documents/Classes/PFObject.html | 278 ++++++------ .../Documents/Classes/PFPolygon.html | 25 +- .../Resources/Documents/Classes/PFPush.html | 53 ++- .../Resources/Documents/Classes/PFQuery.html | 93 ++-- .../Documents/Classes/PFRelation.html | 23 +- .../Resources/Documents/Classes/PFRole.html | 23 +- .../Documents/Classes/PFSession.html | 21 +- .../Resources/Documents/Classes/PFUser.html | 124 +++--- .../Resources/Documents/Classes/Parse.html | 27 +- .../Classes/ParseClientConfiguration.html | 29 +- .../Resources/Documents/Constants.html | 27 +- .../Contents/Resources/Documents/Enums.html | 25 +- .../Documents/Enums/PFCachePolicy.html | 19 +- .../Documents/Enums/PFErrorCode.html | 121 +----- .../Resources/Documents/Enums/PFLogLevel.html | 19 +- .../Resources/Documents/Protocols.html | 19 +- .../Protocols/PFFileUploadController.html | 23 +- .../Documents/Protocols/PFSubclassing.html | 21 +- .../PFUserAuthenticationDelegate.html | 19 +- .../ParseMutableClientConfiguration.html | 27 +- .../Resources/Documents/Type Definitions.html | 19 +- .../Resources/Documents/css/highlight.css | 400 +++++++++--------- .../Resources/Documents/css/jazzy.css | 13 +- .../Contents/Resources/Documents/index.html | 54 +-- .../Contents/Resources/Documents/js/jazzy.js | 4 + .../Resources/Documents/js/jazzy.search.js | 4 + .../Resources/Documents/js/jquery.min.js | 4 +- .../Resources/Documents/js/lunr.min.js | 6 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 151552 -> 151552 bytes api/docsets/Parse.tgz | Bin 230760 -> 229041 bytes api/docsets/Parse.xml | 2 +- api/index.html | 54 +-- api/js/jazzy.js | 4 + api/js/jazzy.search.js | 4 + api/js/jquery.min.js | 4 +- api/js/lunr.min.js | 6 +- api/search.json | 2 +- api/undocumented.json | 87 +--- 81 files changed, 1743 insertions(+), 2048 deletions(-) diff --git a/api/Classes.html b/api/Classes.html index 34d186792..5274e4015 100644 --- a/api/Classes.html +++ b/api/Classes.html @@ -21,27 +21,27 @@

- Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

-

+

-

+

- + GitHub View on GitHub

- + Dash Install in Dash

@@ -49,7 +49,7 @@ @@ -330,10 +330,10 @@

Declaration

Data associated with the anonymous user is retained.
  • logIn switches users without converting the anonymous user. Data associated with the anonymous user will be lost.
  • -
  • Service logIn (e.g. Facebook, Twitter) will attempt to convert +
  • Authentication service logIn will attempt to convert the anonymous user into a standard user by linking it to the service. If a user already exists that is linked to the service, it will instead switch to the existing user.
  • -
  • Service linking (e.g. Facebook, Twitter) will convert the anonymous user +
  • Authentication service linking will convert the anonymous user into a standard user by linking it to the service.
  • @@ -495,7 +495,7 @@

    Declaration

    -

    Encoders

    +

    Encoders

    @@ -777,7 +777,7 @@

    Declaration

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:nearGeoPoint:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    Currently, instances of PFObject may only have one key associated with a PFGeoPoint type.

    @@ -896,7 +896,7 @@

    Declaration

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:polygonContains:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    See more
    @@ -1111,9 +1111,6 @@

    Declaration

    This class is a subclass of a PFObject, and retains the same functionality of a PFObject, but also extends it with various user specific methods, like authentication, signing up, and validation uniqueness.

    -

    Many APIs responsible for linking a PFUser with Facebook or Twitter have been deprecated in favor of dedicated -utilities for each social network. See PFFacebookUtils, PFTwitterUtils and PFAnonymousUtils for more information.

    - See more
    @@ -1211,9 +1208,8 @@

    Declaration

    - diff --git a/api/Classes/PFACL.html b/api/Classes/PFACL.html index 88ca9ebee..f428912d0 100644 --- a/api/Classes/PFACL.html +++ b/api/Classes/PFACL.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -251,7 +251,7 @@

    PFACL

    -

    Creating an ACL

    +

    Creating an ACL

    @@ -346,7 +346,7 @@

    Parameters

    -

    Controlling Public Access

    +

    Controlling Public Access

    @@ -425,7 +425,7 @@

    Declaration

    -

    Controlling Access Per-User

    +

    Controlling Access Per-User

    @@ -918,7 +918,7 @@

    Return Value

    -

    Controlling Access Per-Role

    +

    Controlling Access Per-Role

    @@ -1419,7 +1419,7 @@

    Parameters

    -

    Setting Access Defaults

    +

    Setting Access Defaults

    @@ -1504,9 +1504,8 @@

    Parameters

    - diff --git a/api/Classes/PFAnalytics.html b/api/Classes/PFAnalytics.html index b44ea0c13..eb4ca4401 100644 --- a/api/Classes/PFAnalytics.html +++ b/api/Classes/PFAnalytics.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -252,7 +252,7 @@

    PFAnalytics

    -

    App-Open / Push Analytics

    +

    App-Open / Push Analytics

    @@ -281,13 +281,12 @@

    App-Open / Push Analytics

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)trackAppOpenedWithLaunchOptions:
    -    (nullable NSDictionary *)launchOptions;
    +
    + (id)trackAppOpenedWithLaunchOptions:(nullable NSDictionary *)launchOptions;

    Swift

    -
    class func trackAppOpened(launchOptions: [AnyHashable : Any]? = nil) -> BFTask<NSNumber>
    +
    class func trackAppOpened(launchOptions: [AnyHashable : Any]? = nil) -> Any!
    @@ -415,13 +414,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)trackAppOpenedWithRemoteNotificationPayload:
    +                          
    + (id)trackAppOpenedWithRemoteNotificationPayload:
         (nullable NSDictionary *)userInfo;

    Swift

    -
    class func trackAppOpened(withRemoteNotificationPayload userInfo: [AnyHashable : Any]?) -> BFTask<NSNumber>
    +
    class func trackAppOpened(withRemoteNotificationPayload userInfo: [AnyHashable : Any]?) -> Any!
    @@ -536,7 +535,7 @@

    Parameters

    -

    Custom Analytics

    +

    Custom Analytics

    @@ -563,12 +562,12 @@

    Custom Analytics

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)trackEvent:(nonnull NSString *)name;
    +
    + (id)trackEvent:(nonnull NSString *)name;

    Swift

    -
    class func trackEvent(_ name: String) -> BFTask<NSNumber>
    +
    class func trackEvent(_ name: String) -> Any!
    @@ -701,14 +700,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)
    -    trackEvent:(nonnull NSString *)name
    -    dimensions:(nullable NSDictionary<NSString *, NSString *> *)dimensions;
    +
    + (id)trackEvent:(nonnull NSString *)name
    +      dimensions:(nullable NSDictionary<NSString *, NSString *> *)dimensions;

    Swift

    -
    class func trackEvent(_ name: String, dimensions: [String : String]?) -> BFTask<NSNumber>
    +
    class func trackEvent(_ name: String, dimensions: [String : String]?) -> Any!
    @@ -850,9 +848,8 @@

    Parameters

    - diff --git a/api/Classes/PFAnonymousUtils.html b/api/Classes/PFAnonymousUtils.html index bd2a58d7a..d246f5b02 100644 --- a/api/Classes/PFAnonymousUtils.html +++ b/api/Classes/PFAnonymousUtils.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -247,10 +247,10 @@

    PFAnonymousUtils

    Data associated with the anonymous user is retained.
  • logIn switches users without converting the anonymous user. Data associated with the anonymous user will be lost.
  • -
  • Service logIn (e.g. Facebook, Twitter) will attempt to convert +
  • Authentication service logIn will attempt to convert the anonymous user into a standard user by linking it to the service. If a user already exists that is linked to the service, it will instead switch to the existing user.
  • -
  • Service linking (e.g. Facebook, Twitter) will convert the anonymous user +
  • Authentication service linking will convert the anonymous user into a standard user by linking it to the service.
  • @@ -265,7 +265,7 @@

    PFAnonymousUtils

    -

    Creating an Anonymous User

    +

    Creating an Anonymous User

    @@ -290,12 +290,12 @@

    Creating an Anonymous User

    Declaration

    Objective-C

    -
    + (nonnull BFTask<PFUser *> *)logInInBackground;
    +
    + (id)logInInBackground;

    Swift

    -
    class func logInInBackground() -> BFTask<PFUser>
    +
    class func logInInBackground() -> Any!
    @@ -366,7 +366,7 @@

    Parameters

    -

    Determining Whether a User is Anonymous

    +

    Determining Whether a User is Anonymous

    @@ -434,7 +434,7 @@

    Return Value

    -

    Creating an Anonymous User

    +

    Creating an Anonymous User

    @@ -518,9 +518,8 @@

    Parameters

    - diff --git a/api/Classes/PFCloud.html b/api/Classes/PFCloud.html index d6670cc32..02f78d538 100644 --- a/api/Classes/PFCloud.html +++ b/api/Classes/PFCloud.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -264,14 +264,13 @@

    PFCloud

    Declaration

    Objective-C

    -
    + (nonnull BFTask<id> *)callFunctionInBackground:(nonnull NSString *)function
    -                                  withParameters:
    -                                      (nullable NSDictionary *)parameters;
    +
    + (id)callFunctionInBackground:(nonnull NSString *)function
    +                withParameters:(nullable NSDictionary *)parameters;

    Swift

    -
    class func callFunction(inBackground function: String, withParameters parameters: [AnyHashable : Any]?) -> BFTask<AnyObject>
    +
    class func callFunction(inBackground function: String, withParameters parameters: [AnyHashable : Any]?) -> Any!
    @@ -400,7 +399,7 @@

    Parameters

    -

    Deprecated

    +

    Deprecated

    @@ -513,7 +512,7 @@

    Parameters

    -

    Synchronous

    +

    Synchronous

    @@ -672,9 +671,8 @@

    Return Value

    - diff --git a/api/Classes/PFConfig.html b/api/Classes/PFConfig.html index d3457c10c..7b50c23fa 100644 --- a/api/Classes/PFConfig.html +++ b/api/Classes/PFConfig.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -249,7 +249,7 @@

    PFConfig

    -

    Current Config

    +

    Current Config

    @@ -314,12 +314,12 @@

    Return Value

    Declaration

    Objective-C

    -
    + (nonnull BFTask<PFConfig *> *)getCurrentConfigInBackground;
    +
    + (id)getCurrentConfigInBackground;

    Swift

    -
    class func getCurrentConfigInBackground() -> BFTask<PFConfig>
    +
    class func getCurrentConfigInBackground() -> Any!
    @@ -338,7 +338,7 @@

    Return Value

    -

    Retrieving Config

    +

    Retrieving Config

    @@ -363,12 +363,12 @@

    Retrieving Config

    Declaration

    Objective-C

    -
    + (nonnull BFTask<PFConfig *> *)getConfigInBackground;
    +
    + (id)getConfigInBackground;

    Swift

    -
    class func getInBackground() -> BFTask<PFConfig>
    +
    class func getInBackground() -> Any!
    @@ -439,7 +439,7 @@

    Parameters

    -

    Parameters

    +

    Parameters

    @@ -570,7 +570,7 @@

    Return Value

    -

    Retrieving Config

    +

    Retrieving Config

    @@ -669,9 +669,8 @@

    Return Value

    - diff --git a/api/Classes/PFFileObject.html b/api/Classes/PFFileObject.html index fc8c2b441..df3007358 100644 --- a/api/Classes/PFFileObject.html +++ b/api/Classes/PFFileObject.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -249,7 +249,7 @@

    PFFileObject

    -

    Creating a PFFileObject

    +

    Creating a PFFileObject

    @@ -821,7 +821,7 @@

    Return Value

    -

    File Properties

    +

    File Properties

    @@ -934,7 +934,7 @@

    Declaration

    -

    Storing Data with Parse

    +

    Storing Data with Parse

    @@ -964,7 +964,7 @@

    Declaration

    Swift

    -
    func saveInBackground() -> BFTask<NSNumber>
    +
    func saveInBackground() -> Any!
    @@ -1001,7 +1001,7 @@

    Declaration

    Swift

    -
    func saveInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<NSNumber>
    +
    func saveInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1157,7 +1157,7 @@

    Parameters

    -

    Getting Data from Parse

    +

    Getting Data from Parse

    @@ -1225,7 +1225,7 @@

    Declaration

    Swift

    -
    func getDataInBackground() -> BFTask<NSData>
    +
    func getDataInBackground() -> Any!
    @@ -1269,7 +1269,7 @@

    Declaration

    Swift

    -
    func getDataInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<NSData>
    +
    func getDataInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1326,7 +1326,7 @@

    Declaration

    Swift

    -
    func getDataStreamInBackground() -> BFTask<InputStream>
    +
    func getDataStreamInBackground() -> Any!
    @@ -1376,7 +1376,7 @@

    Declaration

    Swift

    -
    func getDataDownloadStreamInBackground() -> BFTask<InputStream>
    +
    func getDataDownloadStreamInBackground() -> Any!
    @@ -1416,7 +1416,7 @@

    Declaration

    Swift

    -
    func getDataStreamInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<InputStream>
    +
    func getDataStreamInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1487,7 +1487,7 @@

    Declaration

    Swift

    -
    func getDataDownloadStreamInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<InputStream>
    +
    func getDataDownloadStreamInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1793,7 +1793,7 @@

    Declaration

    Swift

    -
    func getFilePathInBackground() -> BFTask<NSString>
    +
    func getFilePathInBackground() -> Any!
    @@ -1840,7 +1840,7 @@

    Declaration

    Swift

    -
    func getFilePathInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<NSString>
    +
    func getFilePathInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -2014,7 +2014,7 @@

    Parameters

    -

    Interrupting a Transfer

    +

    Interrupting a Transfer

    @@ -2059,7 +2059,7 @@

    Declaration

    -

    Cache

    +

    Cache

    @@ -2089,7 +2089,7 @@

    Declaration

    Swift

    -
    func clearCachedDataInBackground() -> BFTask<AnyObject>
    +
    func clearCachedDataInBackground() -> Any!
    @@ -2125,7 +2125,7 @@

    Declaration

    Swift

    -
    class func clearAllCachedDataInBackground() -> BFTask<AnyObject>
    +
    class func clearAllCachedDataInBackground() -> Any!
    @@ -2144,7 +2144,7 @@

    Return Value

    -

    Saving Files

    +

    Saving Files

    @@ -2163,13 +2163,13 @@

    Saving Files

    Deprecated

    -

    Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    +

    Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    Saves the file asynchronously and invokes the given selector on a target.

    -

    @deprecated Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    @@ -2231,7 +2231,7 @@

    Parameters

    -

    Getting Files

    +

    Getting Files

    @@ -2250,13 +2250,13 @@

    Getting Files

    Deprecated

    -

    Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    +

    Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    -

    @deprecated Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    @@ -2317,7 +2317,7 @@

    Parameters

    -

    Storing Data with Parse

    +

    Storing Data with Parse

    @@ -2416,7 +2416,7 @@

    Return Value

    -

    Getting Data from Parse

    +

    Getting Data from Parse

    @@ -2605,9 +2605,8 @@

    Return Value

    - diff --git a/api/Classes/PFGeoPoint.html b/api/Classes/PFGeoPoint.html index 2f4535ec9..3b2aa3418 100644 --- a/api/Classes/PFGeoPoint.html +++ b/api/Classes/PFGeoPoint.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    PFGeoPoint

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:nearGeoPoint:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    Currently, instances of PFObject may only have one key associated with a PFGeoPoint type.

    @@ -251,7 +251,7 @@

    PFGeoPoint

    -

    Creating a Geo Point

    +

    Creating a Geo Point

    @@ -477,7 +477,7 @@

    Parameters

    -

    Controlling Position

    +

    Controlling Position

    @@ -554,7 +554,7 @@

    Declaration

    -

    Calculating Distance

    +

    Calculating Distance

    @@ -732,9 +732,8 @@

    Return Value

    - diff --git a/api/Classes/PFInstallation.html b/api/Classes/PFInstallation.html index ba72b619d..c3d0f1da4 100644 --- a/api/Classes/PFInstallation.html +++ b/api/Classes/PFInstallation.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -263,7 +263,7 @@

    PFInstallation

    -

    Accessing the Current Installation

    +

    Accessing the Current Installation

    @@ -336,7 +336,7 @@

    Declaration

    Swift

    -
    class func getCurrentInstallationInBackground() -> BFTask<PFInstallation>
    +
    class func getCurrentInstallationInBackground() -> Any!
    @@ -351,7 +351,7 @@

    Declaration

    -

    Installation Properties

    +

    Installation Properties

    @@ -607,7 +607,7 @@

    Parameters

    -

    Querying for Installations

    +

    Querying for Installations

    @@ -662,9 +662,8 @@

    Declaration

    - diff --git a/api/Classes/PFObject.html b/api/Classes/PFObject.html index 943a28335..70c08ca94 100644 --- a/api/Classes/PFObject.html +++ b/api/Classes/PFObject.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -250,7 +250,7 @@

    PFObject

    -

    Creating a PFObject

    +

    Creating a PFObject

    @@ -512,7 +512,7 @@

    Return Value

    -

    Managing Object Properties

    +

    Managing Object Properties

    @@ -720,7 +720,7 @@

    Declaration

    -

    Accessors

    +

    Accessors

    @@ -1102,7 +1102,7 @@

    Parameters

    Returns the instance of PFRelation class associated with the given key.

    -

    @deprecated Please use PFObject.-relationForKey: instead.

    +

    @deprecated Please use PFObject.-relationForKey: instead.

    @@ -1232,7 +1232,7 @@

    Parameters

    -

    Array Accessors

    +

    Array Accessors

    @@ -1631,7 +1631,7 @@

    Parameters

    -

    Increment

    +

    Increment

    @@ -1759,7 +1759,7 @@

    Parameters

    -

    Saving Objects

    +

    Saving Objects

    @@ -1784,12 +1784,12 @@

    Saving Objects

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)saveInBackground;
    +
    - (id)saveInBackground;

    Swift

    -
    func saveInBackground() -> BFTask<NSNumber>
    +
    func saveInBackground() -> Any!
    @@ -1883,12 +1883,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)saveEventually;
    +
    - (id)saveEventually;

    Swift

    -
    func saveEventually() -> BFTask<NSNumber>
    +
    func saveEventually() -> Any!
    @@ -1971,7 +1971,7 @@

    Parameters

    -

    Saving Many Objects

    +

    Saving Many Objects

    @@ -1996,13 +1996,12 @@

    Saving Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)saveAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)saveAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func saveAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func saveAll(inBackground objects: [PFObject]?) -> Any!
    @@ -2105,7 +2104,7 @@

    Parameters

    -

    Deleting Many Objects

    +

    Deleting Many Objects

    @@ -2130,13 +2129,12 @@

    Deleting Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)deleteAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)deleteAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func deleteAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func deleteAll(inBackground objects: [PFObject]?) -> Any!
    @@ -2239,7 +2237,7 @@

    Parameters

    -

    Getting an Object

    +

    Getting an Object

    @@ -2281,6 +2279,42 @@

    Return Value

    +
  • + +
    +
    +
    +
    +
    +

    Checks whether the PFObject has data for given key

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    - (BOOL)isDataAvailableForKey:(nonnull NSString *)key;
    + +
    +
    +

    Swift

    +
    func isDataAvailable(forKey key: String) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    YES if data is available for given key

    +
    +
    +
    +
  • @@ -2301,12 +2335,12 @@

    Return Value

    Declaration

    Objective-C

    -
    - (nonnull BFTask<__kindof PFObject *> *)fetchInBackground;
    +
    - (id)fetchInBackground;

    Swift

    -
    func fetchInBackground() -> BFTask<PFObject>
    +
    func fetchInBackground() -> Any!
    @@ -2390,12 +2424,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<__kindof PFObject *> *)fetchIfNeededInBackground;
    +
    - (id)fetchIfNeededInBackground;

    Swift

    -
    func fetchIfNeededInBackground() -> BFTask<PFObject>
    +
    func fetchIfNeededInBackground() -> Any!
    @@ -2466,7 +2500,7 @@

    Parameters

    -

    Getting Many Objects

    +

    Getting Many Objects

    @@ -2491,13 +2525,12 @@

    Getting Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSArray<__kindof PFObject *> *> *)fetchAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)fetchAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func fetchAll(inBackground objects: [PFObject]?) -> BFTask<NSArray>
    +
    class func fetchAll(inBackground objects: [PFObject]?) -> Any!
    @@ -2613,13 +2646,12 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSArray<__kindof PFObject *> *> *)
    -    fetchAllIfNeededInBackground:(nullable NSArray<PFObject *> *)objects;
    +
    + (id)fetchAllIfNeededInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func fetchAllIfNeeded(inBackground objects: [PFObject]?) -> BFTask<NSArray>
    +
    class func fetchAllIfNeeded(inBackground objects: [PFObject]?) -> Any!
    @@ -2723,7 +2755,7 @@

    Parameters

    -

    Fetching From Local Datastore

    +

    Fetching From Local Datastore

    @@ -2749,12 +2781,12 @@

    Fetching From Local Datastore

    Declaration

    Objective-C

    -
    - (nonnull BFTask<__kindof PFObject *> *)fetchFromLocalDatastoreInBackground;
    +
    - (id)fetchFromLocalDatastoreInBackground;

    Swift

    -
    func fetchFromLocalDatastoreInBackground() -> BFTask<PFObject>
    +
    func fetchFromLocalDatastoreInBackground() -> Any!
    @@ -2827,7 +2859,7 @@

    Parameters

    -

    Deleting an Object

    +

    Deleting an Object

    @@ -2852,12 +2884,12 @@

    Deleting an Object

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)deleteInBackground;
    +
    - (id)deleteInBackground;

    Swift

    -
    func deleteInBackground() -> BFTask<NSNumber>
    +
    func deleteInBackground() -> Any!
    @@ -2952,12 +2984,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)deleteEventually;
    +
    - (id)deleteEventually;

    Swift

    -
    func deleteEventually() -> BFTask<NSNumber>
    +
    func deleteEventually() -> Any!
    @@ -2976,7 +3008,7 @@

    Return Value

    -

    Dirtiness

    +

    Dirtiness

    @@ -3081,7 +3113,7 @@

    Return Value

    -

    Pinning

    +

    Pinning

    @@ -3104,7 +3136,7 @@

    Pinning

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -3121,12 +3153,12 @@

    Pinning

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)pinInBackground;
    +
    - (id)pinInBackground;

    Swift

    -
    func pinInBackground() -> BFTask<NSNumber>
    +
    func pinInBackground() -> Any!
    @@ -3155,7 +3187,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -3221,7 +3253,7 @@

    Parameters

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call `-fetchFromLocalDatastore on it.

    See

    @@ -3234,13 +3266,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)pinInBackgroundWithName:
    -    (nonnull NSString *)name;
    +
    - (id)pinInBackgroundWithName:(nonnull NSString *)name;

    Swift

    -
    func pinInBackground(withName name: String) -> BFTask<NSNumber>
    +
    func pinInBackground(withName name: String) -> Any!
    @@ -3287,7 +3318,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -3353,7 +3384,7 @@

    Parameters

    -

    Pinning Many Objects

    +

    Pinning Many Objects

    @@ -3376,7 +3407,7 @@

    Pinning Many Objects

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3393,13 +3424,12 @@

    Pinning Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)pinAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)pinAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func pinAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func pinAll(inBackground objects: [PFObject]?) -> Any!
    @@ -3447,7 +3477,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3526,7 +3556,7 @@

    Parameters

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3539,14 +3569,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)pinAllInBackground:
    -                                    (nullable NSArray<PFObject *> *)objects
    -                                          withName:(nonnull NSString *)name;
    +
    + (id)pinAllInBackground:(nullable NSArray<PFObject *> *)objects
    +                withName:(nonnull NSString *)name;

    Swift

    -
    class func pinAll(inBackground objects: [PFObject]?, withName name: String) -> BFTask<NSNumber>
    +
    class func pinAll(inBackground objects: [PFObject]?, withName name: String) -> Any!
    @@ -3605,7 +3634,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3684,7 +3713,7 @@

    Parameters

    -

    Unpinning

    +

    Unpinning

    @@ -3719,12 +3748,12 @@

    Unpinning

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)unpinInBackground;
    +
    - (id)unpinInBackground;

    Swift

    -
    func unpinInBackground() -> BFTask<NSNumber>
    +
    func unpinInBackground() -> Any!
    @@ -3822,13 +3851,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)unpinInBackgroundWithName:
    -    (nonnull NSString *)name;
    +
    - (id)unpinInBackgroundWithName:(nonnull NSString *)name;

    Swift

    -
    func unpinInBackground(withName name: String) -> BFTask<NSNumber>
    +
    func unpinInBackground(withName name: String) -> Any!
    @@ -3936,7 +3964,7 @@

    Parameters

    -

    Unpinning Many Objects

    +

    Unpinning Many Objects

    @@ -3967,12 +3995,12 @@

    Unpinning Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllObjectsInBackground;
    +
    + (id)unpinAllObjectsInBackground;

    Swift

    -
    class func unpinAllObjectsInBackground() -> BFTask<NSNumber>
    +
    class func unpinAllObjectsInBackground() -> Any!
    @@ -4062,13 +4090,12 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllObjectsInBackgroundWithName:
    -    (nonnull NSString *)name;
    +
    + (id)unpinAllObjectsInBackgroundWithName:(nonnull NSString *)name;

    Swift

    -
    class func unpinAllObjectsInBackground(withName name: String) -> BFTask<NSNumber>
    +
    class func unpinAllObjectsInBackground(withName name: String) -> Any!
    @@ -4194,13 +4221,12 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)unpinAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func unpinAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func unpinAll(inBackground objects: [PFObject]?) -> Any!
    @@ -4330,14 +4356,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllInBackground:
    -                                    (nullable NSArray<PFObject *> *)objects
    -                                            withName:(nonnull NSString *)name;
    +
    + (id)unpinAllInBackground:(nullable NSArray<PFObject *> *)objects
    +                  withName:(nonnull NSString *)name;

    Swift

    -
    class func unpinAll(inBackground objects: [PFObject]?, withName name: String) -> BFTask<NSNumber>
    +
    class func unpinAll(inBackground objects: [PFObject]?, withName name: String) -> Any!
    @@ -4470,7 +4495,7 @@

    Parameters

    -

    Saving Objects

    +

    Saving Objects

    @@ -4489,13 +4514,13 @@

    Saving Objects

    Deprecated

    -

    Please use PFObject.-saveInBackgroundWithBlock: instead.

    +

    Please use PFObject.-saveInBackgroundWithBlock: instead.

    Saves the PFObject asynchronously and calls the given callback.

    -

    @deprecated Please use PFObject.-saveInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-saveInBackgroundWithBlock: instead.

    @@ -4557,7 +4582,7 @@

    Parameters

    -

    Saving Many Objects

    +

    Saving Many Objects

    @@ -4657,7 +4682,7 @@

    Parameters

    -

    Getting an Object

    +

    Getting an Object

    @@ -4676,13 +4701,13 @@

    Getting an Object

    Deprecated

    -

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    Asynchronously refreshes the PFObject and calls the given callback.

    -

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    @@ -4750,13 +4775,13 @@

    Parameters

    Deprecated

    -

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    Fetches the `PFObject asynchronously and calls the given callback.

    -

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    @@ -4824,13 +4849,13 @@

    Parameters

    Deprecated

    -

    Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    +

    Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    Fetches the PFObject’s data asynchronously if dataAvailable is NO, then calls the callback.

    -

    @deprecated Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    @@ -4892,7 +4917,7 @@

    Parameters

    -

    Getting Many Objects

    +

    Getting Many Objects

    @@ -5081,7 +5106,7 @@

    Parameters

    -

    Deleting an Object

    +

    Deleting an Object

    @@ -5100,13 +5125,13 @@

    Deleting an Object

    Deprecated

    -

    Please use PFObject.-deleteInBackgroundWithBlock: instead.

    +

    Please use PFObject.-deleteInBackgroundWithBlock: instead.

    Deletes the PFObject asynchronously and calls the given callback.

    -

    @deprecated Please use PFObject.-deleteInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-deleteInBackgroundWithBlock: instead.

    @@ -5168,7 +5193,7 @@

    Parameters

    -

    Deleting Many Objects

    +

    Deleting Many Objects

    @@ -5268,7 +5293,7 @@

    Parameters

    -

    Methods for Subclasses

    +

    Methods for Subclasses

    @@ -5517,7 +5542,7 @@

    Return Value

    -

    Saving Objects

    +

    Saving Objects

    @@ -5616,7 +5641,7 @@

    Return Value

    -

    Saving Many Objects

    +

    Saving Many Objects

    @@ -5747,7 +5772,7 @@

    Return Value

    -

    Getting an Object

    +

    Getting an Object

    @@ -5916,7 +5941,7 @@

    Parameters

    -

    Getting Many Objects

    +

    Getting Many Objects

    @@ -6155,7 +6180,7 @@

    Parameters

    -

    Fetching From Local Datastore

    +

    Fetching From Local Datastore

    @@ -6252,7 +6277,7 @@

    Parameters

    -

    Deleting an Object

    +

    Deleting an Object

    @@ -6351,7 +6376,7 @@

    Return Value

    -

    Deleting Many Objects

    +

    Deleting Many Objects

    @@ -6482,7 +6507,7 @@

    Return Value

    -

    Pinning

    +

    Pinning

    @@ -6505,7 +6530,7 @@

    Pinning

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6551,7 +6576,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6620,7 +6645,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6680,7 +6705,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6749,7 +6774,7 @@

    Return Value

    -

    Pinning Many Objects

    +

    Pinning Many Objects

    @@ -6772,7 +6797,7 @@

    Pinning Many Objects

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -6837,7 +6862,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -6919,7 +6944,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -6992,7 +7017,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -7074,7 +7099,7 @@

    Return Value

    -

    Unpinning

    +

    Unpinning

    @@ -7321,7 +7346,7 @@

    Return Value

    -

    Unpinning Many Objects

    +

    Unpinning Many Objects

    @@ -7842,9 +7867,8 @@

    Return Value

    -
    diff --git a/api/Classes/PFPolygon.html b/api/Classes/PFPolygon.html index ba2e53720..94b0adb97 100644 --- a/api/Classes/PFPolygon.html +++ b/api/Classes/PFPolygon.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    PFPolygon

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:polygonContains:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    @@ -249,7 +249,7 @@

    PFPolygon

    -

    Creating a Polygon

    +

    Creating a Polygon

    @@ -372,7 +372,7 @@

    Return Value

    -

    Controlling Position

    +

    Controlling Position

    @@ -417,9 +417,8 @@

    Declaration

    - diff --git a/api/Classes/PFPush.html b/api/Classes/PFPush.html index 2aa5bd0a3..740fc0337 100644 --- a/api/Classes/PFPush.html +++ b/api/Classes/PFPush.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -252,7 +252,7 @@

    PFPush

    -

    Creating a Push Notification

    +

    Creating a Push Notification

    @@ -292,7 +292,7 @@

    Declaration

    -

    Configuring a Push Notification

    +

    Configuring a Push Notification

    @@ -881,7 +881,7 @@

    Declaration

    -

    Sending Push Notifications

    +

    Sending Push Notifications

    @@ -913,7 +913,7 @@

    Declaration

    Swift

    -
    class func sendMessageToChannel(inBackground channel: String, withMessage message: String) -> BFTask<NSNumber>
    +
    class func sendMessageToChannel(inBackground channel: String, withMessage message: String) -> Any!
    @@ -1064,7 +1064,7 @@

    Declaration

    Swift

    -
    class func sendMessageToQuery(inBackground query: PFQuery, withMessage message: String) -> BFTask<NSNumber>
    +
    class func sendMessageToQuery(inBackground query: PFQuery, withMessage message: String) -> Any!
    @@ -1211,7 +1211,7 @@

    Declaration

    Swift

    -
    func sendInBackground() -> BFTask<NSNumber>
    +
    func sendInBackground() -> Any!
    @@ -1303,7 +1303,7 @@

    Declaration

    Swift

    -
    class func sendDataToChannel(inBackground channel: String, withData data: [AnyHashable : Any]) -> BFTask<NSNumber>
    +
    class func sendDataToChannel(inBackground channel: String, withData data: [AnyHashable : Any]) -> Any!
    @@ -1456,7 +1456,7 @@

    Declaration

    Swift

    -
    class func sendDataToQuery(inBackground query: PFQuery, withData data: [AnyHashable : Any]) -> BFTask<NSNumber>
    +
    class func sendDataToQuery(inBackground query: PFQuery, withData data: [AnyHashable : Any]) -> Any!
    @@ -1589,7 +1589,7 @@

    Parameters

    -

    Handling Notifications

    +

    Handling Notifications

    @@ -1658,7 +1658,7 @@

    Parameters

    -

    Managing Channel Subscriptions

    +

    Managing Channel Subscriptions

    @@ -1742,7 +1742,7 @@

    Declaration

    Swift

    -
    class func getSubscribedChannelsInBackground() -> BFTask<NSSet>
    +
    class func getSubscribedChannelsInBackground() -> Any!
    @@ -1832,7 +1832,7 @@

    Declaration

    Swift

    -
    class func subscribeToChannel(inBackground channel: String) -> BFTask<NSNumber>
    +
    class func subscribeToChannel(inBackground channel: String) -> Any!
    @@ -1955,7 +1955,7 @@

    Declaration

    Swift

    -
    class func unsubscribeFromChannel(inBackground channel: String) -> BFTask<NSNumber>
    +
    class func unsubscribeFromChannel(inBackground channel: String) -> Any!
    @@ -2058,7 +2058,7 @@

    Parameters

    -

    Sending Push Notifications

    +

    Sending Push Notifications

    @@ -2349,7 +2349,7 @@

    Parameters

    -

    Managing Channel Subscriptions

    +

    Managing Channel Subscriptions

    @@ -2610,7 +2610,7 @@

    Parameters

    -

    Sending Push Notifications

    +

    Sending Push Notifications

    @@ -3009,7 +3009,7 @@

    Return Value

    -

    Managing Channel Subscriptions

    +

    Managing Channel Subscriptions

    @@ -3215,9 +3215,8 @@

    Return Value

    - diff --git a/api/Classes/PFQuery.html b/api/Classes/PFQuery.html index cce1e4067..8f2c8758f 100644 --- a/api/Classes/PFQuery.html +++ b/api/Classes/PFQuery.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -248,7 +248,7 @@

    PFQuery

    -

    Creating a Query for a Class

    +

    Creating a Query for a Class

    @@ -478,7 +478,7 @@

    Declaration

    -

    Adding Basic Constraints

    +

    Adding Basic Constraints

    @@ -1678,7 +1678,7 @@

    Return Value

    -

    Adding Location Constraints

    +

    Adding Location Constraints

    @@ -2241,7 +2241,7 @@

    Return Value

    -

    Adding String Constraints

    +

    Adding String Constraints

    @@ -2632,7 +2632,7 @@

    Return Value

    -

    Adding Subqueries

    +

    Adding Subqueries

    @@ -3067,7 +3067,7 @@

    Return Value

    -

    Sorting

    +

    Sorting

    @@ -3418,7 +3418,7 @@

    Return Value

    -

    Getting Objects by ID

    +

    Getting Objects by ID

    @@ -3455,7 +3455,7 @@

    Declaration

    Swift

    -
    func getObjectInBackground(withId objectId: String) -> BFTask<PFGenericObject>
    +
    func getObjectInBackground(withId objectId: String) -> Any!
    @@ -3566,7 +3566,7 @@

    Parameters

    -

    Getting User Objects

    +

    Getting User Objects

    @@ -3616,7 +3616,7 @@

    Declaration

    -

    Getting all Matches for a Query

    +

    Getting all Matches for a Query

    @@ -3646,7 +3646,7 @@

    Declaration

    Swift

    -
    func findObjectsInBackground() -> BFTask<NSArray>
    +
    func findObjectsInBackground() -> Any!
    @@ -3718,7 +3718,7 @@

    Parameters

    -

    Getting the First Match in a Query

    +

    Getting the First Match in a Query

    @@ -3753,7 +3753,7 @@

    Declaration

    Swift

    -
    func getFirstObjectInBackground() -> BFTask<PFGenericObject>
    +
    func getFirstObjectInBackground() -> Any!
    @@ -3832,7 +3832,7 @@

    Parameters

    -

    Counting the Matches in a Query

    +

    Counting the Matches in a Query

    @@ -3862,7 +3862,7 @@

    Declaration

    Swift

    -
    func countObjectsInBackground() -> BFTask<NSNumber>
    +
    func countObjectsInBackground() -> Any!
    @@ -3933,7 +3933,7 @@

    Parameters

    -

    Cancelling a Query

    +

    Cancelling a Query

    @@ -3978,7 +3978,7 @@

    Declaration

    -

    Paginating Results

    +

    Paginating Results

    @@ -4061,7 +4061,7 @@

    Declaration

    -

    Controlling Caching Behavior

    +

    Controlling Caching Behavior

    @@ -4251,7 +4251,7 @@

    Declaration

    -

    Query Source

    +

    Query Source

    @@ -4469,7 +4469,7 @@

    Return Value

    -

    Advanced Settings

    +

    Advanced Settings

    @@ -4519,7 +4519,7 @@

    Declaration

    -

    Getting Objects by ID

    +

    Getting Objects by ID

    @@ -4538,7 +4538,7 @@

    Getting Objects by ID

    Deprecated

    -

    Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    +

    Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    @@ -4546,7 +4546,7 @@

    Getting Objects by ID

    This mutates the PFQuery. It will reset limit to 1, skip to 0 and remove all conditions, leaving only objectId.

    -

    @deprecated Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    +

    @deprecated Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    @@ -4620,7 +4620,7 @@

    Parameters

    -

    Getting all Matches for a Query

    +

    Getting all Matches for a Query

    @@ -4639,13 +4639,13 @@

    Getting all Matches for a Query

    Deprecated

    -

    Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    +

    Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    Finds objects asynchronously and calls the given callback with the results.

    -

    @deprecated Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    @@ -4706,7 +4706,7 @@

    Parameters

    -

    Getting the First Match in a Query

    +

    Getting the First Match in a Query

    @@ -4725,7 +4725,7 @@

    Getting the First Match in a Query

    Deprecated

    -

    Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    +

    Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    @@ -4736,7 +4736,7 @@

    Getting the First Match in a Query

    -

    @deprecated Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    @@ -4798,7 +4798,7 @@

    Parameters

    -

    Counting the Matches in a Query

    +

    Counting the Matches in a Query

    @@ -4817,13 +4817,13 @@

    Counting the Matches in a Query

    Deprecated

    -

    Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    +

    Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    Counts objects asynchronously and calls the given callback with the count.

    -

    @deprecated Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    @@ -4883,7 +4883,7 @@

    Parameters

    -

    Getting Objects by ID

    +

    Getting Objects by ID

    @@ -5172,7 +5172,7 @@

    Return Value

    -

    Getting User Objects

    +

    Getting User Objects

    @@ -5300,7 +5300,7 @@

    Parameters

    -

    Getting all Matches for a Query

    +

    Getting all Matches for a Query

    @@ -5400,7 +5400,7 @@

    Return Value

    -

    Getting the First Match in a Query

    +

    Getting the First Match in a Query

    @@ -5509,7 +5509,7 @@

    Return Value

    -

    Counting the Matches in a Query

    +

    Counting the Matches in a Query

    @@ -5608,9 +5608,8 @@

    Return Value

    - diff --git a/api/Classes/PFRelation.html b/api/Classes/PFRelation.html index 659a2b9aa..0821fc1e6 100644 --- a/api/Classes/PFRelation.html +++ b/api/Classes/PFRelation.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -285,7 +285,7 @@

    Declaration

    -

    Accessing Objects

    +

    Accessing Objects

    @@ -330,7 +330,7 @@

    Declaration

    -

    Modifying Relations

    +

    Modifying Relations

    @@ -445,9 +445,8 @@

    Parameters

    - diff --git a/api/Classes/PFRole.html b/api/Classes/PFRole.html index 44e7b688a..cc7601660 100644 --- a/api/Classes/PFRole.html +++ b/api/Classes/PFRole.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -254,7 +254,7 @@

    PFRole

    -

    Creating a New Role

    +

    Creating a New Role

    @@ -490,7 +490,7 @@

    Parameters

    -

    Role-specific Properties

    +

    Role-specific Properties

    @@ -615,9 +615,8 @@

    Declaration

    - diff --git a/api/Classes/PFSession.html b/api/Classes/PFSession.html index 886e0d363..5557004d6 100644 --- a/api/Classes/PFSession.html +++ b/api/Classes/PFSession.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -303,7 +303,7 @@

    Declaration

    Swift

    -
    class func getCurrentSessionInBackground() -> BFTask<PFSession>
    +
    class func getCurrentSessionInBackground() -> Any!
    @@ -375,9 +375,8 @@

    Parameters

    - diff --git a/api/Classes/PFUser.html b/api/Classes/PFUser.html index 31af4f622..9887cd60f 100644 --- a/api/Classes/PFUser.html +++ b/api/Classes/PFUser.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -239,9 +239,6 @@

    PFUser

    This class is a subclass of a PFObject, and retains the same functionality of a PFObject, but also extends it with various user specific methods, like authentication, signing up, and validation uniqueness.

    -

    Many APIs responsible for linking a PFUser with Facebook or Twitter have been deprecated in favor of dedicated -utilities for each social network. See PFFacebookUtils, PFTwitterUtils and PFAnonymousUtils for more information.

    - @@ -253,7 +250,7 @@

    PFUser

    -

    Accessing the Current User

    +

    Accessing the Current User

    @@ -314,12 +311,12 @@

    Return Value

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)getCurrentUserInBackground;
    +
    + (id)getCurrentUserInBackground;

    Swift

    -
    class func getCurrentUserInBackground() -> BFTask<PFUser>
    +
    class func getCurrentUserInBackground() -> Any!
    @@ -379,8 +376,6 @@

    Declaration

    Whether the PFUser was just created from a request.

    -

    This is only set after a Facebook or Twitter login.

    -

    Declaration

    @@ -442,7 +437,7 @@

    Declaration

    -

    Creating a New User

    +

    Creating a New User

    @@ -498,7 +493,7 @@

    Return Value

    or once an object with a relation to that user or an ACL that refers to the user has been saved.

    Warning

    - PFObject.-saveEventually will not work on if an item being saved has a relation + PFObject. will not work on if an item being saved has a relation to an automatic user that has never been saved.
    @@ -647,12 +642,12 @@

    Declaration

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)signUpInBackground;
    +
    - (id)signUpInBackground;

    Swift

    -
    func signUpInBackground() -> BFTask<NSNumber>
    +
    func signUpInBackground() -> Any!
    @@ -730,7 +725,7 @@

    Parameters

    -

    Logging In

    +

    Logging In

    @@ -758,14 +753,13 @@

    Logging In

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)
    -    logInWithUsernameInBackground:(nonnull NSString *)username
    -                         password:(nonnull NSString *)password;
    +
    + (id)logInWithUsernameInBackground:(nonnull NSString *)username
    +                           password:(nonnull NSString *)password;

    Swift

    -
    class func logInWithUsername(inBackground username: String, password: String) -> BFTask<PFUser>
    +
    class func logInWithUsername(inBackground username: String, password: String) -> Any!
    @@ -896,7 +890,7 @@

    Parameters

    -

    Becoming a User

    +

    Becoming a User

    @@ -924,13 +918,12 @@

    Becoming a User

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)becomeInBackground:
    -    (nonnull NSString *)sessionToken;
    +
    + (id)becomeInBackground:(nonnull NSString *)sessionToken;

    Swift

    -
    class func become(inBackground sessionToken: String) -> BFTask<PFUser>
    +
    class func become(inBackground sessionToken: String) -> Any!
    @@ -1036,7 +1029,7 @@

    Parameters

    -

    Revocable Session

    +

    Revocable Session

    @@ -1065,12 +1058,12 @@

    Revocable Session

    Declaration

    Objective-C

    -
    + (nonnull BFTask *)enableRevocableSessionInBackground;
    +
    + (id)enableRevocableSessionInBackground;

    Swift

    -
    class func enableRevocableSessionInBackground() -> BFTask<AnyObject>
    +
    class func enableRevocableSessionInBackground() -> Any!
    @@ -1146,7 +1139,7 @@

    Parameters

    -

    Logging Out

    +

    Logging Out

    @@ -1175,12 +1168,12 @@

    Logging Out

    Declaration

    Objective-C

    -
    + (nonnull BFTask *)logOutInBackground;
    +
    + (id)logOutInBackground;

    Swift

    -
    class func logOutInBackground() -> BFTask<AnyObject>
    +
    class func logOutInBackground() -> Any!
    @@ -1254,7 +1247,7 @@

    Parameters

    -

    Requesting a Password Reset

    +

    Requesting a Password Reset

    @@ -1281,13 +1274,12 @@

    Requesting a Password Reset

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)requestPasswordResetForEmailInBackground:
    -    (nonnull NSString *)email;
    +
    + (id)requestPasswordResetForEmailInBackground:(nonnull NSString *)email;

    Swift

    -
    class func requestPasswordResetForEmail(inBackground email: String) -> BFTask<NSNumber>
    +
    class func requestPasswordResetForEmail(inBackground email: String) -> Any!
    @@ -1394,7 +1386,7 @@

    Parameters

    -

    Third-party Authentication

    +

    Third-party Authentication

    @@ -1559,16 +1551,15 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)
    -    logInWithAuthTypeInBackground:(nonnull NSString *)authType
    -                         authData:
    -                             (nonnull NSDictionary<NSString *, NSString *> *)
    -                                 authData;
    +
    + (id)logInWithAuthTypeInBackground:(nonnull NSString *)authType
    +                           authData:
    +                               (nonnull NSDictionary<NSString *, NSString *> *)
    +                                   authData;

    Swift

    -
    class func logInWithAuthType(inBackground authType: String, authData: [String : String]) -> BFTask<PFUser>
    +
    class func logInWithAuthType(inBackground authType: String, authData: [String : String]) -> Any!
    @@ -1639,16 +1630,15 @@

    Return Value

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)
    -    linkWithAuthTypeInBackground:(nonnull NSString *)authType
    -                        authData:
    -                            (nonnull NSDictionary<NSString *, NSString *> *)
    -                                authData;
    +
    - (id)linkWithAuthTypeInBackground:(nonnull NSString *)authType
    +                          authData:
    +                              (nonnull NSDictionary<NSString *, NSString *> *)
    +                                  authData;

    Swift

    -
    func linkWithAuthType(inBackground authType: String, authData: [String : String]) -> BFTask<NSNumber>
    +
    func linkWithAuthType(inBackground authType: String, authData: [String : String]) -> Any!
    @@ -1719,13 +1709,12 @@

    Return Value

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)unlinkWithAuthTypeInBackground:
    -    (nonnull NSString *)authType;
    +
    - (id)unlinkWithAuthTypeInBackground:(nonnull NSString *)authType;

    Swift

    -
    func unlinkWithAuthType(inBackground authType: String) -> BFTask<NSNumber>
    +
    func unlinkWithAuthType(inBackground authType: String) -> Any!
    @@ -1827,7 +1816,7 @@

    Return Value

    -

    Creating a New User

    +

    Creating a New User

    @@ -1846,7 +1835,7 @@

    Creating a New User

    Deprecated

    -

    Please use PFUser.-signUpInBackgroundWithBlock: instead.

    +

    Please use PFUser.-signUpInBackgroundWithBlock: instead.

    @@ -1859,7 +1848,7 @@

    Creating a New User

    -

    @deprecated Please use PFUser.-signUpInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFUser.-signUpInBackgroundWithBlock: instead.

    @@ -1921,7 +1910,7 @@

    Parameters

    -

    Logging In

    +

    Logging In

    @@ -2035,7 +2024,7 @@

    Parameters

    -

    Becoming a User

    +

    Becoming a User

    @@ -2136,7 +2125,7 @@

    Parameters

    -

    Requesting a Password Reset

    +

    Requesting a Password Reset

    @@ -2239,7 +2228,7 @@

    Parameters

    -

    Creating a New User

    +

    Creating a New User

    @@ -2352,7 +2341,7 @@

    Return Value

    -

    Logging In

    +

    Logging In

    @@ -2517,7 +2506,7 @@

    Return Value

    -

    Becoming a User

    +

    Becoming a User

    @@ -2656,7 +2645,7 @@

    Return Value

    -

    Logging Out

    +

    Logging Out

    @@ -2701,7 +2690,7 @@

    Declaration

    -

    Requesting a Password Reset

    +

    Requesting a Password Reset

    @@ -2838,9 +2827,8 @@

    Return Value

    - diff --git a/api/Classes/Parse.html b/api/Classes/Parse.html index 7c3658406..930d4da18 100644 --- a/api/Classes/Parse.html +++ b/api/Classes/Parse.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -248,7 +248,7 @@

    Parse

    -

    Connecting to Parse

    +

    Connecting to Parse

    @@ -514,7 +514,7 @@

    Declaration

    -

    Enabling Local Datastore

    +

    Enabling Local Datastore

    @@ -596,7 +596,7 @@

    Return Value

    -

    Enabling Extensions Data Sharing

    +

    Enabling Extensions Data Sharing

    @@ -816,7 +816,7 @@

    Return Value

    -

    Logging

    +

    Logging

    @@ -876,9 +876,8 @@

    Return Value

    - diff --git a/api/Classes/ParseClientConfiguration.html b/api/Classes/ParseClientConfiguration.html index 5e4152cac..57a0d9e2b 100644 --- a/api/Classes/ParseClientConfiguration.html +++ b/api/Classes/ParseClientConfiguration.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -253,7 +253,7 @@

    ParseClientConfiguration

    -

    Connecting to Parse

    +

    Connecting to Parse

    @@ -390,7 +390,7 @@

    Declaration

    -

    Enabling Local Datastore

    +

    Enabling Local Datastore

    @@ -438,7 +438,7 @@

    Declaration

    -

    Enabling Extensions Data Sharing

    +

    Enabling Extensions Data Sharing

    @@ -523,7 +523,7 @@

    Declaration

    -

    Network Properties

    +

    Network Properties

    @@ -602,7 +602,7 @@

    Declaration

    -

    Creating a Configuration

    +

    Creating a Configuration

    @@ -681,9 +681,8 @@

    Return Value

    - diff --git a/api/Constants.html b/api/Constants.html index a8ece5b35..93e474959 100644 --- a/api/Constants.html +++ b/api/Constants.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    Constants

    -

    Platform

    +

    Platform

    @@ -281,7 +281,7 @@

    Declaration

    -

    Errors

    +

    Errors

    @@ -326,7 +326,7 @@

    Declaration

    -

    Network Notifications

    +

    Network Notifications

    @@ -578,7 +578,7 @@

    Declaration

    -

    Notifications

    +

    Notifications

    @@ -623,9 +623,8 @@

    Declaration

    - diff --git a/api/Enums.html b/api/Enums.html index 0ff5fa720..a6fdf6089 100644 --- a/api/Enums.html +++ b/api/Enums.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    Enumerations

    -

    Cache Policies

    +

    Cache Policies

    @@ -295,7 +295,7 @@

    Declaration

    -

    Logging Levels

    +

    Logging Levels

    @@ -350,7 +350,7 @@

    Declaration

    -

    Errors

    +

    Errors

    @@ -398,9 +398,8 @@

    Declaration

    - diff --git a/api/Enums/PFCachePolicy.html b/api/Enums/PFCachePolicy.html index 620b0b763..9d395cbb7 100644 --- a/api/Enums/PFCachePolicy.html +++ b/api/Enums/PFCachePolicy.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -463,9 +463,8 @@

    Declaration

    - diff --git a/api/Enums/PFErrorCode.html b/api/Enums/PFErrorCode.html index 3f77b2d16..1fe59a07d 100644 --- a/api/Enums/PFErrorCode.html +++ b/api/Enums/PFErrorCode.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -1755,38 +1755,6 @@

    Declaration

  • -
  • - -
    -
    -
    -
    -
    -

    An existing Facebook account already linked to another user.

    - -
    -
    -

    Declaration

    -
    -

    Objective-C

    -
    kPFErrorFacebookAccountAlreadyLinked = 208
    - -
    -
    -

    Swift

    -
    case errorFacebookAccountAlreadyLinked = 208
    - -
    -
    -
    -
    -
  • @@ -1812,7 +1780,7 @@

    Declaration

    Swift

    -
    static var errorAccountAlreadyLinked: PFErrorCode { get }
    +
    case errorAccountAlreadyLinked = 208
    @@ -1883,38 +1851,6 @@

    Declaration

  • -
  • - -
    -
    -
    -
    -
    -

    Facebook id missing from request.

    - -
    -
    -

    Declaration

    -
    -

    Objective-C

    -
    kPFErrorFacebookIdMissing = 250
    - -
    -
    -

    Swift

    -
    case errorFacebookIdMissing = 250
    - -
    -
    -
    -
    -
  • @@ -1940,39 +1876,7 @@

    Declaration

    Swift

    -
    static var errorLinkedIdMissing: PFErrorCode { get }
    - -
    - - - -
  • -
  • - -
    -
    -
    -
    -
    -

    Invalid Facebook session.

    - -
    -
    -

    Declaration

    -
    -

    Objective-C

    -
    kPFErrorFacebookInvalidSession = 251
    - -
    -
    -

    Swift

    -
    case errorFacebookInvalidSession = 251
    +
    case errorLinkedIdMissing = 250
    @@ -2004,7 +1908,7 @@

    Declaration

    Swift

    -
    static var errorInvalidLinkedSession: PFErrorCode { get }
    +
    case errorInvalidLinkedSession = 251
    @@ -2019,9 +1923,8 @@

    Declaration

    - diff --git a/api/Enums/PFLogLevel.html b/api/Enums/PFLogLevel.html index b03476a07..da9df82fb 100644 --- a/api/Enums/PFLogLevel.html +++ b/api/Enums/PFLogLevel.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -439,9 +439,8 @@

    Declaration

    - diff --git a/api/Protocols.html b/api/Protocols.html index a8ae50de3..b932222f3 100644 --- a/api/Protocols.html +++ b/api/Protocols.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -386,9 +386,8 @@

    Declaration

    - diff --git a/api/Protocols/PFFileUploadController.html b/api/Protocols/PFFileUploadController.html index 505cd9cc1..c9dee9293 100644 --- a/api/Protocols/PFFileUploadController.html +++ b/api/Protocols/PFFileUploadController.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -271,13 +271,13 @@

    Declaration

    fileName:(NSString *_Nullable)fileName mimeType:(NSString *_Nullable)mimeType sessionToken:(NSString *_Nonnull)sessionToken - cancellationToken:(BFCancellationToken *_Nonnull)cancellationToken + cancellationToken:(id)cancellationToken progressBlock:(PFProgressBlock _Nonnull)progressBlock;

    Swift

    -
    func uploadSourceFilePath(_ sourceFilePath: String, fileName: String?, mimeType: String?, sessionToken: String, cancellationToken: BFCancellationToken, progressBlock: Any!) -> BFTask<PFFileUploadResult>
    +
    func uploadSourceFilePath(_ sourceFilePath: String, fileName: String?, mimeType: String?, sessionToken: String, cancellationToken: Any!, progressBlock: Any!) -> Any!
    @@ -375,9 +375,8 @@

    Return Value

    - diff --git a/api/Protocols/PFSubclassing.html b/api/Protocols/PFSubclassing.html index 4eea978df..63bcbfeab 100644 --- a/api/Protocols/PFSubclassing.html +++ b/api/Protocols/PFSubclassing.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -297,7 +297,7 @@

    Declaration

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    Calling PFObject.dataAvailable on this object will return NO -until PFObject.-fetchIfNeeded has been called. No network request will be made. +until PFObject. has been called. No network request will be made. A default implementation is provided by PFObject which should always be sufficient.

    @@ -482,9 +482,8 @@

    Declaration

    - diff --git a/api/Protocols/PFUserAuthenticationDelegate.html b/api/Protocols/PFUserAuthenticationDelegate.html index b913b54fb..5ac2f2ed5 100644 --- a/api/Protocols/PFUserAuthenticationDelegate.html +++ b/api/Protocols/PFUserAuthenticationDelegate.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -315,9 +315,8 @@

    Return Value

    - diff --git a/api/Protocols/ParseMutableClientConfiguration.html b/api/Protocols/ParseMutableClientConfiguration.html index 5ae0cda6f..7e1b5d179 100644 --- a/api/Protocols/ParseMutableClientConfiguration.html +++ b/api/Protocols/ParseMutableClientConfiguration.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -255,7 +255,7 @@

    ParseMutableClientConfiguration

    -

    Connecting to Parse

    +

    Connecting to Parse

    @@ -397,7 +397,7 @@

    Declaration

    -

    Enabling Local Datastore

    +

    Enabling Local Datastore

    @@ -445,7 +445,7 @@

    Declaration

    -

    Enabling Extensions Data Sharing

    +

    Enabling Extensions Data Sharing

    @@ -530,7 +530,7 @@

    Declaration

    -

    Network Properties

    +

    Network Properties

    @@ -607,9 +607,8 @@

    Declaration

    - diff --git a/api/Type Definitions.html b/api/Type Definitions.html index 07fe3a3e2..49016aacc 100644 --- a/api/Type Definitions.html +++ b/api/Type Definitions.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -273,9 +273,8 @@

    Declaration

    - diff --git a/api/badge.svg b/api/badge.svg index 3c66424b4..a5fd08ddc 100644 --- a/api/badge.svg +++ b/api/badge.svg @@ -19,10 +19,10 @@ documentation - 93% + 94% - 93% + 94% diff --git a/api/css/highlight.css b/api/css/highlight.css index d0db0e13b..c170357ce 100644 --- a/api/css/highlight.css +++ b/api/css/highlight.css @@ -1,200 +1,202 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ /* Credit to https://gist.github.com/wataru420/2048287 */ -.highlight { - /* Comment */ - /* Error */ - /* Keyword */ - /* Operator */ - /* Comment.Multiline */ - /* Comment.Preproc */ - /* Comment.Single */ - /* Comment.Special */ - /* Generic.Deleted */ - /* Generic.Deleted.Specific */ - /* Generic.Emph */ - /* Generic.Error */ - /* Generic.Heading */ - /* Generic.Inserted */ - /* Generic.Inserted.Specific */ - /* Generic.Output */ - /* Generic.Prompt */ - /* Generic.Strong */ - /* Generic.Subheading */ - /* Generic.Traceback */ - /* Keyword.Constant */ - /* Keyword.Declaration */ - /* Keyword.Pseudo */ - /* Keyword.Reserved */ - /* Keyword.Type */ - /* Literal.Number */ - /* Literal.String */ - /* Name.Attribute */ - /* Name.Builtin */ - /* Name.Class */ - /* Name.Constant */ - /* Name.Entity */ - /* Name.Exception */ - /* Name.Function */ - /* Name.Namespace */ - /* Name.Tag */ - /* Name.Variable */ - /* Operator.Word */ - /* Text.Whitespace */ - /* Literal.Number.Float */ - /* Literal.Number.Hex */ - /* Literal.Number.Integer */ - /* Literal.Number.Oct */ - /* Literal.String.Backtick */ - /* Literal.String.Char */ - /* Literal.String.Doc */ - /* Literal.String.Double */ - /* Literal.String.Escape */ - /* Literal.String.Heredoc */ - /* Literal.String.Interpol */ - /* Literal.String.Other */ - /* Literal.String.Regex */ - /* Literal.String.Single */ - /* Literal.String.Symbol */ - /* Name.Builtin.Pseudo */ - /* Name.Variable.Class */ - /* Name.Variable.Global */ - /* Name.Variable.Instance */ - /* Literal.Number.Integer.Long */ } - .highlight .c { - color: #999988; - font-style: italic; } - .highlight .err { - color: #a61717; - background-color: #e3d2d2; } - .highlight .k { - color: #000000; - font-weight: bold; } - .highlight .o { - color: #000000; - font-weight: bold; } - .highlight .cm { - color: #999988; - font-style: italic; } - .highlight .cp { - color: #999999; - font-weight: bold; } - .highlight .c1 { - color: #999988; - font-style: italic; } - .highlight .cs { - color: #999999; - font-weight: bold; - font-style: italic; } - .highlight .gd { - color: #000000; - background-color: #ffdddd; } - .highlight .gd .x { - color: #000000; - background-color: #ffaaaa; } - .highlight .ge { - color: #000000; - font-style: italic; } - .highlight .gr { - color: #aa0000; } - .highlight .gh { - color: #999999; } - .highlight .gi { - color: #000000; - background-color: #ddffdd; } - .highlight .gi .x { - color: #000000; - background-color: #aaffaa; } - .highlight .go { - color: #888888; } - .highlight .gp { - color: #555555; } - .highlight .gs { - font-weight: bold; } - .highlight .gu { - color: #aaaaaa; } - .highlight .gt { - color: #aa0000; } - .highlight .kc { - color: #000000; - font-weight: bold; } - .highlight .kd { - color: #000000; - font-weight: bold; } - .highlight .kp { - color: #000000; - font-weight: bold; } - .highlight .kr { - color: #000000; - font-weight: bold; } - .highlight .kt { - color: #445588; } - .highlight .m { - color: #009999; } - .highlight .s { - color: #d14; } - .highlight .na { - color: #008080; } - .highlight .nb { - color: #0086B3; } - .highlight .nc { - color: #445588; - font-weight: bold; } - .highlight .no { - color: #008080; } - .highlight .ni { - color: #800080; } - .highlight .ne { - color: #990000; - font-weight: bold; } - .highlight .nf { - color: #990000; } - .highlight .nn { - color: #555555; } - .highlight .nt { - color: #000080; } - .highlight .nv { - color: #008080; } - .highlight .ow { - color: #000000; - font-weight: bold; } - .highlight .w { - color: #bbbbbb; } - .highlight .mf { - color: #009999; } - .highlight .mh { - color: #009999; } - .highlight .mi { - color: #009999; } - .highlight .mo { - color: #009999; } - .highlight .sb { - color: #d14; } - .highlight .sc { - color: #d14; } - .highlight .sd { - color: #d14; } - .highlight .s2 { - color: #d14; } - .highlight .se { - color: #d14; } - .highlight .sh { - color: #d14; } - .highlight .si { - color: #d14; } - .highlight .sx { - color: #d14; } - .highlight .sr { - color: #009926; } - .highlight .s1 { - color: #d14; } - .highlight .ss { - color: #990073; } - .highlight .bp { - color: #999999; } - .highlight .vc { - color: #008080; } - .highlight .vg { - color: #008080; } - .highlight .vi { - color: #008080; } - .highlight .il { - color: #009999; } +.highlight .c { + color: #999988; + font-style: italic; } + +.highlight .err { + color: #a61717; + background-color: #e3d2d2; } + +.highlight .k { + color: #000000; + font-weight: bold; } + +.highlight .o { + color: #000000; + font-weight: bold; } + +.highlight .cm { + color: #999988; + font-style: italic; } + +.highlight .cp { + color: #999999; + font-weight: bold; } + +.highlight .c1 { + color: #999988; + font-style: italic; } + +.highlight .cs { + color: #999999; + font-weight: bold; + font-style: italic; } + +.highlight .gd { + color: #000000; + background-color: #ffdddd; } + +.highlight .gd .x { + color: #000000; + background-color: #ffaaaa; } + +.highlight .ge { + color: #000000; + font-style: italic; } + +.highlight .gr { + color: #aa0000; } + +.highlight .gh { + color: #999999; } + +.highlight .gi { + color: #000000; + background-color: #ddffdd; } + +.highlight .gi .x { + color: #000000; + background-color: #aaffaa; } + +.highlight .go { + color: #888888; } + +.highlight .gp { + color: #555555; } + +.highlight .gs { + font-weight: bold; } + +.highlight .gu { + color: #aaaaaa; } + +.highlight .gt { + color: #aa0000; } + +.highlight .kc { + color: #000000; + font-weight: bold; } + +.highlight .kd { + color: #000000; + font-weight: bold; } + +.highlight .kp { + color: #000000; + font-weight: bold; } + +.highlight .kr { + color: #000000; + font-weight: bold; } + +.highlight .kt { + color: #445588; } + +.highlight .m { + color: #009999; } + +.highlight .s { + color: #d14; } + +.highlight .na { + color: #008080; } + +.highlight .nb { + color: #0086B3; } + +.highlight .nc { + color: #445588; + font-weight: bold; } + +.highlight .no { + color: #008080; } + +.highlight .ni { + color: #800080; } + +.highlight .ne { + color: #990000; + font-weight: bold; } + +.highlight .nf { + color: #990000; } + +.highlight .nn { + color: #555555; } + +.highlight .nt { + color: #000080; } + +.highlight .nv { + color: #008080; } + +.highlight .ow { + color: #000000; + font-weight: bold; } + +.highlight .w { + color: #bbbbbb; } + +.highlight .mf { + color: #009999; } + +.highlight .mh { + color: #009999; } + +.highlight .mi { + color: #009999; } + +.highlight .mo { + color: #009999; } + +.highlight .sb { + color: #d14; } + +.highlight .sc { + color: #d14; } + +.highlight .sd { + color: #d14; } + +.highlight .s2 { + color: #d14; } + +.highlight .se { + color: #d14; } + +.highlight .sh { + color: #d14; } + +.highlight .si { + color: #d14; } + +.highlight .sx { + color: #d14; } + +.highlight .sr { + color: #009926; } + +.highlight .s1 { + color: #d14; } + +.highlight .ss { + color: #990073; } + +.highlight .bp { + color: #999999; } + +.highlight .vc { + color: #008080; } + +.highlight .vg { + color: #008080; } + +.highlight .vi { + color: #008080; } + +.highlight .il { + color: #009999; } diff --git a/api/css/jazzy.css b/api/css/jazzy.css index ff59f5f86..c7bb9fe22 100644 --- a/api/css/jazzy.css +++ b/api/css/jazzy.css @@ -1,3 +1,7 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ *, *:before, *:after { box-sizing: inherit; } @@ -83,6 +87,11 @@ th, td { padding: 6px 13px; border: 1px solid #ddd; } +hr { + height: 1px; + border: none; + background-color: #ddd; } + pre { margin: 0 0 1.275em; padding: .85em 1em; @@ -129,8 +138,8 @@ pre code { color: #fff; } .header-icon { - padding-right: 6px; - vertical-align: -4px; + padding-right: 2px; + vertical-align: -3px; height: 16px; } .breadcrumbs { diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes.html index 34d186792..5274e4015 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -330,10 +330,10 @@

    Declaration

    Data associated with the anonymous user is retained.
  • logIn switches users without converting the anonymous user. Data associated with the anonymous user will be lost.
  • -
  • Service logIn (e.g. Facebook, Twitter) will attempt to convert +
  • Authentication service logIn will attempt to convert the anonymous user into a standard user by linking it to the service. If a user already exists that is linked to the service, it will instead switch to the existing user.
  • -
  • Service linking (e.g. Facebook, Twitter) will convert the anonymous user +
  • Authentication service linking will convert the anonymous user into a standard user by linking it to the service.
  • @@ -495,7 +495,7 @@

    Declaration

    -

    Encoders

    +

    Encoders

    @@ -777,7 +777,7 @@

    Declaration

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:nearGeoPoint:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    Currently, instances of PFObject may only have one key associated with a PFGeoPoint type.

    @@ -896,7 +896,7 @@

    Declaration

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:polygonContains:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    See more
    @@ -1111,9 +1111,6 @@

    Declaration

    This class is a subclass of a PFObject, and retains the same functionality of a PFObject, but also extends it with various user specific methods, like authentication, signing up, and validation uniqueness.

    -

    Many APIs responsible for linking a PFUser with Facebook or Twitter have been deprecated in favor of dedicated -utilities for each social network. See PFFacebookUtils, PFTwitterUtils and PFAnonymousUtils for more information.

    - See more
    @@ -1211,9 +1208,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFACL.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFACL.html index 88ca9ebee..f428912d0 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFACL.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFACL.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -251,7 +251,7 @@

    PFACL

    -

    Creating an ACL

    +

    Creating an ACL

    @@ -346,7 +346,7 @@

    Parameters

    -

    Controlling Public Access

    +

    Controlling Public Access

    @@ -425,7 +425,7 @@

    Declaration

    -

    Controlling Access Per-User

    +

    Controlling Access Per-User

    @@ -918,7 +918,7 @@

    Return Value

    -

    Controlling Access Per-Role

    +

    Controlling Access Per-Role

    @@ -1419,7 +1419,7 @@

    Parameters

    -

    Setting Access Defaults

    +

    Setting Access Defaults

    @@ -1504,9 +1504,8 @@

    Parameters

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnalytics.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnalytics.html index b44ea0c13..eb4ca4401 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnalytics.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnalytics.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -252,7 +252,7 @@

    PFAnalytics

    -

    App-Open / Push Analytics

    +

    App-Open / Push Analytics

    @@ -281,13 +281,12 @@

    App-Open / Push Analytics

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)trackAppOpenedWithLaunchOptions:
    -    (nullable NSDictionary *)launchOptions;
    +
    + (id)trackAppOpenedWithLaunchOptions:(nullable NSDictionary *)launchOptions;

    Swift

    -
    class func trackAppOpened(launchOptions: [AnyHashable : Any]? = nil) -> BFTask<NSNumber>
    +
    class func trackAppOpened(launchOptions: [AnyHashable : Any]? = nil) -> Any!
    @@ -415,13 +414,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)trackAppOpenedWithRemoteNotificationPayload:
    +                          
    + (id)trackAppOpenedWithRemoteNotificationPayload:
         (nullable NSDictionary *)userInfo;

    Swift

    -
    class func trackAppOpened(withRemoteNotificationPayload userInfo: [AnyHashable : Any]?) -> BFTask<NSNumber>
    +
    class func trackAppOpened(withRemoteNotificationPayload userInfo: [AnyHashable : Any]?) -> Any!
    @@ -536,7 +535,7 @@

    Parameters

    -

    Custom Analytics

    +

    Custom Analytics

    @@ -563,12 +562,12 @@

    Custom Analytics

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)trackEvent:(nonnull NSString *)name;
    +
    + (id)trackEvent:(nonnull NSString *)name;

    Swift

    -
    class func trackEvent(_ name: String) -> BFTask<NSNumber>
    +
    class func trackEvent(_ name: String) -> Any!
    @@ -701,14 +700,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)
    -    trackEvent:(nonnull NSString *)name
    -    dimensions:(nullable NSDictionary<NSString *, NSString *> *)dimensions;
    +
    + (id)trackEvent:(nonnull NSString *)name
    +      dimensions:(nullable NSDictionary<NSString *, NSString *> *)dimensions;

    Swift

    -
    class func trackEvent(_ name: String, dimensions: [String : String]?) -> BFTask<NSNumber>
    +
    class func trackEvent(_ name: String, dimensions: [String : String]?) -> Any!
    @@ -850,9 +848,8 @@

    Parameters

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnonymousUtils.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnonymousUtils.html index bd2a58d7a..d246f5b02 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnonymousUtils.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFAnonymousUtils.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -247,10 +247,10 @@

    PFAnonymousUtils

    Data associated with the anonymous user is retained.
  • logIn switches users without converting the anonymous user. Data associated with the anonymous user will be lost.
  • -
  • Service logIn (e.g. Facebook, Twitter) will attempt to convert +
  • Authentication service logIn will attempt to convert the anonymous user into a standard user by linking it to the service. If a user already exists that is linked to the service, it will instead switch to the existing user.
  • -
  • Service linking (e.g. Facebook, Twitter) will convert the anonymous user +
  • Authentication service linking will convert the anonymous user into a standard user by linking it to the service.
  • @@ -265,7 +265,7 @@

    PFAnonymousUtils

    -

    Creating an Anonymous User

    +

    Creating an Anonymous User

    @@ -290,12 +290,12 @@

    Creating an Anonymous User

    Declaration

    Objective-C

    -
    + (nonnull BFTask<PFUser *> *)logInInBackground;
    +
    + (id)logInInBackground;

    Swift

    -
    class func logInInBackground() -> BFTask<PFUser>
    +
    class func logInInBackground() -> Any!
    @@ -366,7 +366,7 @@

    Parameters

    -

    Determining Whether a User is Anonymous

    +

    Determining Whether a User is Anonymous

    @@ -434,7 +434,7 @@

    Return Value

    -

    Creating an Anonymous User

    +

    Creating an Anonymous User

    @@ -518,9 +518,8 @@

    Parameters

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFCloud.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFCloud.html index d6670cc32..02f78d538 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFCloud.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFCloud.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -264,14 +264,13 @@

    PFCloud

    Declaration

    Objective-C

    -
    + (nonnull BFTask<id> *)callFunctionInBackground:(nonnull NSString *)function
    -                                  withParameters:
    -                                      (nullable NSDictionary *)parameters;
    +
    + (id)callFunctionInBackground:(nonnull NSString *)function
    +                withParameters:(nullable NSDictionary *)parameters;

    Swift

    -
    class func callFunction(inBackground function: String, withParameters parameters: [AnyHashable : Any]?) -> BFTask<AnyObject>
    +
    class func callFunction(inBackground function: String, withParameters parameters: [AnyHashable : Any]?) -> Any!
    @@ -400,7 +399,7 @@

    Parameters

    -

    Deprecated

    +

    Deprecated

    @@ -513,7 +512,7 @@

    Parameters

    -

    Synchronous

    +

    Synchronous

    @@ -672,9 +671,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFConfig.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFConfig.html index d3457c10c..7b50c23fa 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFConfig.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFConfig.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -249,7 +249,7 @@

    PFConfig

    -

    Current Config

    +

    Current Config

    @@ -314,12 +314,12 @@

    Return Value

    Declaration

    Objective-C

    -
    + (nonnull BFTask<PFConfig *> *)getCurrentConfigInBackground;
    +
    + (id)getCurrentConfigInBackground;

    Swift

    -
    class func getCurrentConfigInBackground() -> BFTask<PFConfig>
    +
    class func getCurrentConfigInBackground() -> Any!
    @@ -338,7 +338,7 @@

    Return Value

    -

    Retrieving Config

    +

    Retrieving Config

    @@ -363,12 +363,12 @@

    Retrieving Config

    Declaration

    Objective-C

    -
    + (nonnull BFTask<PFConfig *> *)getConfigInBackground;
    +
    + (id)getConfigInBackground;

    Swift

    -
    class func getInBackground() -> BFTask<PFConfig>
    +
    class func getInBackground() -> Any!
    @@ -439,7 +439,7 @@

    Parameters

    -

    Parameters

    +

    Parameters

    @@ -570,7 +570,7 @@

    Return Value

    -

    Retrieving Config

    +

    Retrieving Config

    @@ -669,9 +669,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFFileObject.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFFileObject.html index fc8c2b441..df3007358 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFFileObject.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFFileObject.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -249,7 +249,7 @@

    PFFileObject

    -

    Creating a PFFileObject

    +

    Creating a PFFileObject

    @@ -821,7 +821,7 @@

    Return Value

    -

    File Properties

    +

    File Properties

    @@ -934,7 +934,7 @@

    Declaration

    -

    Storing Data with Parse

    +

    Storing Data with Parse

    @@ -964,7 +964,7 @@

    Declaration

    Swift

    -
    func saveInBackground() -> BFTask<NSNumber>
    +
    func saveInBackground() -> Any!
    @@ -1001,7 +1001,7 @@

    Declaration

    Swift

    -
    func saveInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<NSNumber>
    +
    func saveInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1157,7 +1157,7 @@

    Parameters

    -

    Getting Data from Parse

    +

    Getting Data from Parse

    @@ -1225,7 +1225,7 @@

    Declaration

    Swift

    -
    func getDataInBackground() -> BFTask<NSData>
    +
    func getDataInBackground() -> Any!
    @@ -1269,7 +1269,7 @@

    Declaration

    Swift

    -
    func getDataInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<NSData>
    +
    func getDataInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1326,7 +1326,7 @@

    Declaration

    Swift

    -
    func getDataStreamInBackground() -> BFTask<InputStream>
    +
    func getDataStreamInBackground() -> Any!
    @@ -1376,7 +1376,7 @@

    Declaration

    Swift

    -
    func getDataDownloadStreamInBackground() -> BFTask<InputStream>
    +
    func getDataDownloadStreamInBackground() -> Any!
    @@ -1416,7 +1416,7 @@

    Declaration

    Swift

    -
    func getDataStreamInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<InputStream>
    +
    func getDataStreamInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1487,7 +1487,7 @@

    Declaration

    Swift

    -
    func getDataDownloadStreamInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<InputStream>
    +
    func getDataDownloadStreamInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -1793,7 +1793,7 @@

    Declaration

    Swift

    -
    func getFilePathInBackground() -> BFTask<NSString>
    +
    func getFilePathInBackground() -> Any!
    @@ -1840,7 +1840,7 @@

    Declaration

    Swift

    -
    func getFilePathInBackground(progressBlock: PFProgressBlock? = nil) -> BFTask<NSString>
    +
    func getFilePathInBackground(progressBlock: PFProgressBlock? = nil) -> Any!
    @@ -2014,7 +2014,7 @@

    Parameters

    -

    Interrupting a Transfer

    +

    Interrupting a Transfer

    @@ -2059,7 +2059,7 @@

    Declaration

    -

    Cache

    +

    Cache

    @@ -2089,7 +2089,7 @@

    Declaration

    Swift

    -
    func clearCachedDataInBackground() -> BFTask<AnyObject>
    +
    func clearCachedDataInBackground() -> Any!
    @@ -2125,7 +2125,7 @@

    Declaration

    Swift

    -
    class func clearAllCachedDataInBackground() -> BFTask<AnyObject>
    +
    class func clearAllCachedDataInBackground() -> Any!
    @@ -2144,7 +2144,7 @@

    Return Value

    -

    Saving Files

    +

    Saving Files

    @@ -2163,13 +2163,13 @@

    Saving Files

    Deprecated

    -

    Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    +

    Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    Saves the file asynchronously and invokes the given selector on a target.

    -

    @deprecated Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFFileObject.-saveInBackgroundWithBlock: instead.

    @@ -2231,7 +2231,7 @@

    Parameters

    -

    Getting Files

    +

    Getting Files

    @@ -2250,13 +2250,13 @@

    Getting Files

    Deprecated

    -

    Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    +

    Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    -

    @deprecated Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFFileObject.-getDataInBackgroundWithBlock: instead.

    @@ -2317,7 +2317,7 @@

    Parameters

    -

    Storing Data with Parse

    +

    Storing Data with Parse

    @@ -2416,7 +2416,7 @@

    Return Value

    -

    Getting Data from Parse

    +

    Getting Data from Parse

    @@ -2605,9 +2605,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFGeoPoint.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFGeoPoint.html index 2f4535ec9..3b2aa3418 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFGeoPoint.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFGeoPoint.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    PFGeoPoint

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:nearGeoPoint:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    Currently, instances of PFObject may only have one key associated with a PFGeoPoint type.

    @@ -251,7 +251,7 @@

    PFGeoPoint

    -

    Creating a Geo Point

    +

    Creating a Geo Point

    @@ -477,7 +477,7 @@

    Parameters

    -

    Controlling Position

    +

    Controlling Position

    @@ -554,7 +554,7 @@

    Declaration

    -

    Calculating Distance

    +

    Calculating Distance

    @@ -732,9 +732,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFInstallation.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFInstallation.html index ba72b619d..c3d0f1da4 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFInstallation.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFInstallation.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -263,7 +263,7 @@

    PFInstallation

    -

    Accessing the Current Installation

    +

    Accessing the Current Installation

    @@ -336,7 +336,7 @@

    Declaration

    Swift

    -
    class func getCurrentInstallationInBackground() -> BFTask<PFInstallation>
    +
    class func getCurrentInstallationInBackground() -> Any!
    @@ -351,7 +351,7 @@

    Declaration

    -

    Installation Properties

    +

    Installation Properties

    @@ -607,7 +607,7 @@

    Parameters

    -

    Querying for Installations

    +

    Querying for Installations

    @@ -662,9 +662,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFObject.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFObject.html index 943a28335..70c08ca94 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFObject.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFObject.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -250,7 +250,7 @@

    PFObject

    -

    Creating a PFObject

    +

    Creating a PFObject

    @@ -512,7 +512,7 @@

    Return Value

    -

    Managing Object Properties

    +

    Managing Object Properties

    @@ -720,7 +720,7 @@

    Declaration

    -

    Accessors

    +

    Accessors

    @@ -1102,7 +1102,7 @@

    Parameters

    Returns the instance of PFRelation class associated with the given key.

    -

    @deprecated Please use PFObject.-relationForKey: instead.

    +

    @deprecated Please use PFObject.-relationForKey: instead.

    @@ -1232,7 +1232,7 @@

    Parameters

    -

    Array Accessors

    +

    Array Accessors

    @@ -1631,7 +1631,7 @@

    Parameters

    -

    Increment

    +

    Increment

    @@ -1759,7 +1759,7 @@

    Parameters

    -

    Saving Objects

    +

    Saving Objects

    @@ -1784,12 +1784,12 @@

    Saving Objects

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)saveInBackground;
    +
    - (id)saveInBackground;

    Swift

    -
    func saveInBackground() -> BFTask<NSNumber>
    +
    func saveInBackground() -> Any!
    @@ -1883,12 +1883,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)saveEventually;
    +
    - (id)saveEventually;

    Swift

    -
    func saveEventually() -> BFTask<NSNumber>
    +
    func saveEventually() -> Any!
    @@ -1971,7 +1971,7 @@

    Parameters

    -

    Saving Many Objects

    +

    Saving Many Objects

    @@ -1996,13 +1996,12 @@

    Saving Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)saveAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)saveAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func saveAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func saveAll(inBackground objects: [PFObject]?) -> Any!
    @@ -2105,7 +2104,7 @@

    Parameters

    -

    Deleting Many Objects

    +

    Deleting Many Objects

    @@ -2130,13 +2129,12 @@

    Deleting Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)deleteAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)deleteAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func deleteAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func deleteAll(inBackground objects: [PFObject]?) -> Any!
    @@ -2239,7 +2237,7 @@

    Parameters

    -

    Getting an Object

    +

    Getting an Object

    @@ -2281,6 +2279,42 @@

    Return Value

    +
  • + +
    +
    +
    +
    +
    +

    Checks whether the PFObject has data for given key

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    - (BOOL)isDataAvailableForKey:(nonnull NSString *)key;
    + +
    +
    +

    Swift

    +
    func isDataAvailable(forKey key: String) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    YES if data is available for given key

    +
    +
    +
    +
  • @@ -2301,12 +2335,12 @@

    Return Value

    Declaration

    Objective-C

    -
    - (nonnull BFTask<__kindof PFObject *> *)fetchInBackground;
    +
    - (id)fetchInBackground;

    Swift

    -
    func fetchInBackground() -> BFTask<PFObject>
    +
    func fetchInBackground() -> Any!
    @@ -2390,12 +2424,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<__kindof PFObject *> *)fetchIfNeededInBackground;
    +
    - (id)fetchIfNeededInBackground;

    Swift

    -
    func fetchIfNeededInBackground() -> BFTask<PFObject>
    +
    func fetchIfNeededInBackground() -> Any!
    @@ -2466,7 +2500,7 @@

    Parameters

    -

    Getting Many Objects

    +

    Getting Many Objects

    @@ -2491,13 +2525,12 @@

    Getting Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSArray<__kindof PFObject *> *> *)fetchAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)fetchAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func fetchAll(inBackground objects: [PFObject]?) -> BFTask<NSArray>
    +
    class func fetchAll(inBackground objects: [PFObject]?) -> Any!
    @@ -2613,13 +2646,12 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSArray<__kindof PFObject *> *> *)
    -    fetchAllIfNeededInBackground:(nullable NSArray<PFObject *> *)objects;
    +
    + (id)fetchAllIfNeededInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func fetchAllIfNeeded(inBackground objects: [PFObject]?) -> BFTask<NSArray>
    +
    class func fetchAllIfNeeded(inBackground objects: [PFObject]?) -> Any!
    @@ -2723,7 +2755,7 @@

    Parameters

    -

    Fetching From Local Datastore

    +

    Fetching From Local Datastore

    @@ -2749,12 +2781,12 @@

    Fetching From Local Datastore

    Declaration

    Objective-C

    -
    - (nonnull BFTask<__kindof PFObject *> *)fetchFromLocalDatastoreInBackground;
    +
    - (id)fetchFromLocalDatastoreInBackground;

    Swift

    -
    func fetchFromLocalDatastoreInBackground() -> BFTask<PFObject>
    +
    func fetchFromLocalDatastoreInBackground() -> Any!
    @@ -2827,7 +2859,7 @@

    Parameters

    -

    Deleting an Object

    +

    Deleting an Object

    @@ -2852,12 +2884,12 @@

    Deleting an Object

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)deleteInBackground;
    +
    - (id)deleteInBackground;

    Swift

    -
    func deleteInBackground() -> BFTask<NSNumber>
    +
    func deleteInBackground() -> Any!
    @@ -2952,12 +2984,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)deleteEventually;
    +
    - (id)deleteEventually;

    Swift

    -
    func deleteEventually() -> BFTask<NSNumber>
    +
    func deleteEventually() -> Any!
    @@ -2976,7 +3008,7 @@

    Return Value

    -

    Dirtiness

    +

    Dirtiness

    @@ -3081,7 +3113,7 @@

    Return Value

    -

    Pinning

    +

    Pinning

    @@ -3104,7 +3136,7 @@

    Pinning

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -3121,12 +3153,12 @@

    Pinning

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)pinInBackground;
    +
    - (id)pinInBackground;

    Swift

    -
    func pinInBackground() -> BFTask<NSNumber>
    +
    func pinInBackground() -> Any!
    @@ -3155,7 +3187,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -3221,7 +3253,7 @@

    Parameters

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call `-fetchFromLocalDatastore on it.

    See

    @@ -3234,13 +3266,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)pinInBackgroundWithName:
    -    (nonnull NSString *)name;
    +
    - (id)pinInBackgroundWithName:(nonnull NSString *)name;

    Swift

    -
    func pinInBackground(withName name: String) -> BFTask<NSNumber>
    +
    func pinInBackground(withName name: String) -> Any!
    @@ -3287,7 +3318,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -3353,7 +3384,7 @@

    Parameters

    -

    Pinning Many Objects

    +

    Pinning Many Objects

    @@ -3376,7 +3407,7 @@

    Pinning Many Objects

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3393,13 +3424,12 @@

    Pinning Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)pinAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)pinAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func pinAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func pinAll(inBackground objects: [PFObject]?) -> Any!
    @@ -3447,7 +3477,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3526,7 +3556,7 @@

    Parameters

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3539,14 +3569,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)pinAllInBackground:
    -                                    (nullable NSArray<PFObject *> *)objects
    -                                          withName:(nonnull NSString *)name;
    +
    + (id)pinAllInBackground:(nullable NSArray<PFObject *> *)objects
    +                withName:(nonnull NSString *)name;

    Swift

    -
    class func pinAll(inBackground objects: [PFObject]?, withName name: String) -> BFTask<NSNumber>
    +
    class func pinAll(inBackground objects: [PFObject]?, withName name: String) -> Any!
    @@ -3605,7 +3634,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -3684,7 +3713,7 @@

    Parameters

    -

    Unpinning

    +

    Unpinning

    @@ -3719,12 +3748,12 @@

    Unpinning

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)unpinInBackground;
    +
    - (id)unpinInBackground;

    Swift

    -
    func unpinInBackground() -> BFTask<NSNumber>
    +
    func unpinInBackground() -> Any!
    @@ -3822,13 +3851,12 @@

    Parameters

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)unpinInBackgroundWithName:
    -    (nonnull NSString *)name;
    +
    - (id)unpinInBackgroundWithName:(nonnull NSString *)name;

    Swift

    -
    func unpinInBackground(withName name: String) -> BFTask<NSNumber>
    +
    func unpinInBackground(withName name: String) -> Any!
    @@ -3936,7 +3964,7 @@

    Parameters

    -

    Unpinning Many Objects

    +

    Unpinning Many Objects

    @@ -3967,12 +3995,12 @@

    Unpinning Many Objects

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllObjectsInBackground;
    +
    + (id)unpinAllObjectsInBackground;

    Swift

    -
    class func unpinAllObjectsInBackground() -> BFTask<NSNumber>
    +
    class func unpinAllObjectsInBackground() -> Any!
    @@ -4062,13 +4090,12 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllObjectsInBackgroundWithName:
    -    (nonnull NSString *)name;
    +
    + (id)unpinAllObjectsInBackgroundWithName:(nonnull NSString *)name;

    Swift

    -
    class func unpinAllObjectsInBackground(withName name: String) -> BFTask<NSNumber>
    +
    class func unpinAllObjectsInBackground(withName name: String) -> Any!
    @@ -4194,13 +4221,12 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllInBackground:
    -    (nullable NSArray<PFObject *> *)objects;
    +
    + (id)unpinAllInBackground:(nullable NSArray<PFObject *> *)objects;

    Swift

    -
    class func unpinAll(inBackground objects: [PFObject]?) -> BFTask<NSNumber>
    +
    class func unpinAll(inBackground objects: [PFObject]?) -> Any!
    @@ -4330,14 +4356,13 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)unpinAllInBackground:
    -                                    (nullable NSArray<PFObject *> *)objects
    -                                            withName:(nonnull NSString *)name;
    +
    + (id)unpinAllInBackground:(nullable NSArray<PFObject *> *)objects
    +                  withName:(nonnull NSString *)name;

    Swift

    -
    class func unpinAll(inBackground objects: [PFObject]?, withName name: String) -> BFTask<NSNumber>
    +
    class func unpinAll(inBackground objects: [PFObject]?, withName name: String) -> Any!
    @@ -4470,7 +4495,7 @@

    Parameters

    -

    Saving Objects

    +

    Saving Objects

    @@ -4489,13 +4514,13 @@

    Saving Objects

    Deprecated

    -

    Please use PFObject.-saveInBackgroundWithBlock: instead.

    +

    Please use PFObject.-saveInBackgroundWithBlock: instead.

    Saves the PFObject asynchronously and calls the given callback.

    -

    @deprecated Please use PFObject.-saveInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-saveInBackgroundWithBlock: instead.

    @@ -4557,7 +4582,7 @@

    Parameters

    -

    Saving Many Objects

    +

    Saving Many Objects

    @@ -4657,7 +4682,7 @@

    Parameters

    -

    Getting an Object

    +

    Getting an Object

    @@ -4676,13 +4701,13 @@

    Getting an Object

    Deprecated

    -

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    Asynchronously refreshes the PFObject and calls the given callback.

    -

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    @@ -4750,13 +4775,13 @@

    Parameters

    Deprecated

    -

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    Please use PFObject.-fetchInBackgroundWithBlock: instead.

    Fetches the `PFObject asynchronously and calls the given callback.

    -

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-fetchInBackgroundWithBlock: instead.

    @@ -4824,13 +4849,13 @@

    Parameters

    Deprecated

    -

    Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    +

    Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    Fetches the PFObject’s data asynchronously if dataAvailable is NO, then calls the callback.

    -

    @deprecated Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-fetchIfNeededInBackgroundWithBlock: instead.

    @@ -4892,7 +4917,7 @@

    Parameters

    -

    Getting Many Objects

    +

    Getting Many Objects

    @@ -5081,7 +5106,7 @@

    Parameters

    -

    Deleting an Object

    +

    Deleting an Object

    @@ -5100,13 +5125,13 @@

    Deleting an Object

    Deprecated

    -

    Please use PFObject.-deleteInBackgroundWithBlock: instead.

    +

    Please use PFObject.-deleteInBackgroundWithBlock: instead.

    Deletes the PFObject asynchronously and calls the given callback.

    -

    @deprecated Please use PFObject.-deleteInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFObject.-deleteInBackgroundWithBlock: instead.

    @@ -5168,7 +5193,7 @@

    Parameters

    -

    Deleting Many Objects

    +

    Deleting Many Objects

    @@ -5268,7 +5293,7 @@

    Parameters

    -

    Methods for Subclasses

    +

    Methods for Subclasses

    @@ -5517,7 +5542,7 @@

    Return Value

    -

    Saving Objects

    +

    Saving Objects

    @@ -5616,7 +5641,7 @@

    Return Value

    -

    Saving Many Objects

    +

    Saving Many Objects

    @@ -5747,7 +5772,7 @@

    Return Value

    -

    Getting an Object

    +

    Getting an Object

    @@ -5916,7 +5941,7 @@

    Parameters

    -

    Getting Many Objects

    +

    Getting Many Objects

    @@ -6155,7 +6180,7 @@

    Parameters

    -

    Fetching From Local Datastore

    +

    Fetching From Local Datastore

    @@ -6252,7 +6277,7 @@

    Parameters

    -

    Deleting an Object

    +

    Deleting an Object

    @@ -6351,7 +6376,7 @@

    Return Value

    -

    Deleting Many Objects

    +

    Deleting Many Objects

    @@ -6482,7 +6507,7 @@

    Return Value

    -

    Pinning

    +

    Pinning

    @@ -6505,7 +6530,7 @@

    Pinning

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6551,7 +6576,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6620,7 +6645,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6680,7 +6705,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call -fetchFromLocalDatastore on it.

    See

    @@ -6749,7 +6774,7 @@

    Return Value

    -

    Pinning Many Objects

    +

    Pinning Many Objects

    @@ -6772,7 +6797,7 @@

    Pinning Many Objects

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -6837,7 +6862,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -6919,7 +6944,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -6992,7 +7017,7 @@

    Return Value

    If those other objects have not been fetched from Parse, they will not be stored. However, if they have changed data, all the changes will be retained. To get the objects back later, you can -use a PFQuery that uses PFQuery.-fromLocalDatastore, or you can create an unfetched pointer with +use a PFQuery that uses PFQuery., or you can create an unfetched pointer with +objectWithoutDataWithClassName:objectId: and then call fetchFromLocalDatastore: on it.

    See

    @@ -7074,7 +7099,7 @@

    Return Value

    -

    Unpinning

    +

    Unpinning

    @@ -7321,7 +7346,7 @@

    Return Value

    -

    Unpinning Many Objects

    +

    Unpinning Many Objects

    @@ -7842,9 +7867,8 @@

    Return Value

    -
    diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPolygon.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPolygon.html index ba2e53720..94b0adb97 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPolygon.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPolygon.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    PFPolygon

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject. -It could be used to perform queries in a geospatial manner using PFQuery.-whereKey:polygonContains:.

    +It could be used to perform queries in a geospatial manner using PFQuery..

    @@ -249,7 +249,7 @@

    PFPolygon

    -

    Creating a Polygon

    +

    Creating a Polygon

    @@ -372,7 +372,7 @@

    Return Value

    -

    Controlling Position

    +

    Controlling Position

    @@ -417,9 +417,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPush.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPush.html index 2aa5bd0a3..740fc0337 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPush.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFPush.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -252,7 +252,7 @@

    PFPush

    -

    Creating a Push Notification

    +

    Creating a Push Notification

    @@ -292,7 +292,7 @@

    Declaration

    -

    Configuring a Push Notification

    +

    Configuring a Push Notification

    @@ -881,7 +881,7 @@

    Declaration

    -

    Sending Push Notifications

    +

    Sending Push Notifications

    @@ -913,7 +913,7 @@

    Declaration

    Swift

    -
    class func sendMessageToChannel(inBackground channel: String, withMessage message: String) -> BFTask<NSNumber>
    +
    class func sendMessageToChannel(inBackground channel: String, withMessage message: String) -> Any!
    @@ -1064,7 +1064,7 @@

    Declaration

    Swift

    -
    class func sendMessageToQuery(inBackground query: PFQuery, withMessage message: String) -> BFTask<NSNumber>
    +
    class func sendMessageToQuery(inBackground query: PFQuery, withMessage message: String) -> Any!
    @@ -1211,7 +1211,7 @@

    Declaration

    Swift

    -
    func sendInBackground() -> BFTask<NSNumber>
    +
    func sendInBackground() -> Any!
    @@ -1303,7 +1303,7 @@

    Declaration

    Swift

    -
    class func sendDataToChannel(inBackground channel: String, withData data: [AnyHashable : Any]) -> BFTask<NSNumber>
    +
    class func sendDataToChannel(inBackground channel: String, withData data: [AnyHashable : Any]) -> Any!
    @@ -1456,7 +1456,7 @@

    Declaration

    Swift

    -
    class func sendDataToQuery(inBackground query: PFQuery, withData data: [AnyHashable : Any]) -> BFTask<NSNumber>
    +
    class func sendDataToQuery(inBackground query: PFQuery, withData data: [AnyHashable : Any]) -> Any!
    @@ -1589,7 +1589,7 @@

    Parameters

    -

    Handling Notifications

    +

    Handling Notifications

    @@ -1658,7 +1658,7 @@

    Parameters

    -

    Managing Channel Subscriptions

    +

    Managing Channel Subscriptions

    @@ -1742,7 +1742,7 @@

    Declaration

    Swift

    -
    class func getSubscribedChannelsInBackground() -> BFTask<NSSet>
    +
    class func getSubscribedChannelsInBackground() -> Any!
    @@ -1832,7 +1832,7 @@

    Declaration

    Swift

    -
    class func subscribeToChannel(inBackground channel: String) -> BFTask<NSNumber>
    +
    class func subscribeToChannel(inBackground channel: String) -> Any!
    @@ -1955,7 +1955,7 @@

    Declaration

    Swift

    -
    class func unsubscribeFromChannel(inBackground channel: String) -> BFTask<NSNumber>
    +
    class func unsubscribeFromChannel(inBackground channel: String) -> Any!
    @@ -2058,7 +2058,7 @@

    Parameters

    -

    Sending Push Notifications

    +

    Sending Push Notifications

    @@ -2349,7 +2349,7 @@

    Parameters

    -

    Managing Channel Subscriptions

    +

    Managing Channel Subscriptions

    @@ -2610,7 +2610,7 @@

    Parameters

    -

    Sending Push Notifications

    +

    Sending Push Notifications

    @@ -3009,7 +3009,7 @@

    Return Value

    -

    Managing Channel Subscriptions

    +

    Managing Channel Subscriptions

    @@ -3215,9 +3215,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFQuery.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFQuery.html index cce1e4067..8f2c8758f 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFQuery.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFQuery.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -248,7 +248,7 @@

    PFQuery

    -

    Creating a Query for a Class

    +

    Creating a Query for a Class

    @@ -478,7 +478,7 @@

    Declaration

    -

    Adding Basic Constraints

    +

    Adding Basic Constraints

    @@ -1678,7 +1678,7 @@

    Return Value

    -

    Adding Location Constraints

    +

    Adding Location Constraints

    @@ -2241,7 +2241,7 @@

    Return Value

    -

    Adding String Constraints

    +

    Adding String Constraints

    @@ -2632,7 +2632,7 @@

    Return Value

    -

    Adding Subqueries

    +

    Adding Subqueries

    @@ -3067,7 +3067,7 @@

    Return Value

    -

    Sorting

    +

    Sorting

    @@ -3418,7 +3418,7 @@

    Return Value

    -

    Getting Objects by ID

    +

    Getting Objects by ID

    @@ -3455,7 +3455,7 @@

    Declaration

    Swift

    -
    func getObjectInBackground(withId objectId: String) -> BFTask<PFGenericObject>
    +
    func getObjectInBackground(withId objectId: String) -> Any!
    @@ -3566,7 +3566,7 @@

    Parameters

    -

    Getting User Objects

    +

    Getting User Objects

    @@ -3616,7 +3616,7 @@

    Declaration

    -

    Getting all Matches for a Query

    +

    Getting all Matches for a Query

    @@ -3646,7 +3646,7 @@

    Declaration

    Swift

    -
    func findObjectsInBackground() -> BFTask<NSArray>
    +
    func findObjectsInBackground() -> Any!
    @@ -3718,7 +3718,7 @@

    Parameters

    -

    Getting the First Match in a Query

    +

    Getting the First Match in a Query

    @@ -3753,7 +3753,7 @@

    Declaration

    Swift

    -
    func getFirstObjectInBackground() -> BFTask<PFGenericObject>
    +
    func getFirstObjectInBackground() -> Any!
    @@ -3832,7 +3832,7 @@

    Parameters

    -

    Counting the Matches in a Query

    +

    Counting the Matches in a Query

    @@ -3862,7 +3862,7 @@

    Declaration

    Swift

    -
    func countObjectsInBackground() -> BFTask<NSNumber>
    +
    func countObjectsInBackground() -> Any!
    @@ -3933,7 +3933,7 @@

    Parameters

    -

    Cancelling a Query

    +

    Cancelling a Query

    @@ -3978,7 +3978,7 @@

    Declaration

    -

    Paginating Results

    +

    Paginating Results

    @@ -4061,7 +4061,7 @@

    Declaration

    -

    Controlling Caching Behavior

    +

    Controlling Caching Behavior

    @@ -4251,7 +4251,7 @@

    Declaration

    -

    Query Source

    +

    Query Source

    @@ -4469,7 +4469,7 @@

    Return Value

    -

    Advanced Settings

    +

    Advanced Settings

    @@ -4519,7 +4519,7 @@

    Declaration

    -

    Getting Objects by ID

    +

    Getting Objects by ID

    @@ -4538,7 +4538,7 @@

    Getting Objects by ID

    Deprecated

    -

    Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    +

    Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    @@ -4546,7 +4546,7 @@

    Getting Objects by ID

    This mutates the PFQuery. It will reset limit to 1, skip to 0 and remove all conditions, leaving only objectId.

    -

    @deprecated Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    +

    @deprecated Please use PFQuery.-getObjectInBackgroundWithId:block: instead.

    @@ -4620,7 +4620,7 @@

    Parameters

    -

    Getting all Matches for a Query

    +

    Getting all Matches for a Query

    @@ -4639,13 +4639,13 @@

    Getting all Matches for a Query

    Deprecated

    -

    Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    +

    Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    Finds objects asynchronously and calls the given callback with the results.

    -

    @deprecated Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFQuery.-findObjectsInBackgroundWithBlock: instead.

    @@ -4706,7 +4706,7 @@

    Parameters

    -

    Getting the First Match in a Query

    +

    Getting the First Match in a Query

    @@ -4725,7 +4725,7 @@

    Getting the First Match in a Query

    Deprecated

    -

    Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    +

    Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    @@ -4736,7 +4736,7 @@

    Getting the First Match in a Query

    -

    @deprecated Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFQuery.-getFirstObjectInBackgroundWithBlock: instead.

    @@ -4798,7 +4798,7 @@

    Parameters

    -

    Counting the Matches in a Query

    +

    Counting the Matches in a Query

    @@ -4817,13 +4817,13 @@

    Counting the Matches in a Query

    Deprecated

    -

    Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    +

    Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    Counts objects asynchronously and calls the given callback with the count.

    -

    @deprecated Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFQuery.-countObjectsInBackgroundWithBlock: instead.

    @@ -4883,7 +4883,7 @@

    Parameters

    -

    Getting Objects by ID

    +

    Getting Objects by ID

    @@ -5172,7 +5172,7 @@

    Return Value

    -

    Getting User Objects

    +

    Getting User Objects

    @@ -5300,7 +5300,7 @@

    Parameters

    -

    Getting all Matches for a Query

    +

    Getting all Matches for a Query

    @@ -5400,7 +5400,7 @@

    Return Value

    -

    Getting the First Match in a Query

    +

    Getting the First Match in a Query

    @@ -5509,7 +5509,7 @@

    Return Value

    -

    Counting the Matches in a Query

    +

    Counting the Matches in a Query

    @@ -5608,9 +5608,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRelation.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRelation.html index 659a2b9aa..0821fc1e6 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRelation.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRelation.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -285,7 +285,7 @@

    Declaration

    -

    Accessing Objects

    +

    Accessing Objects

    @@ -330,7 +330,7 @@

    Declaration

    -

    Modifying Relations

    +

    Modifying Relations

    @@ -445,9 +445,8 @@

    Parameters

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRole.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRole.html index 44e7b688a..cc7601660 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRole.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFRole.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -254,7 +254,7 @@

    PFRole

    -

    Creating a New Role

    +

    Creating a New Role

    @@ -490,7 +490,7 @@

    Parameters

    -

    Role-specific Properties

    +

    Role-specific Properties

    @@ -615,9 +615,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFSession.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFSession.html index 886e0d363..5557004d6 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFSession.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFSession.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -303,7 +303,7 @@

    Declaration

    Swift

    -
    class func getCurrentSessionInBackground() -> BFTask<PFSession>
    +
    class func getCurrentSessionInBackground() -> Any!
    @@ -375,9 +375,8 @@

    Parameters

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFUser.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFUser.html index 31af4f622..9887cd60f 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFUser.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/PFUser.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -239,9 +239,6 @@

    PFUser

    This class is a subclass of a PFObject, and retains the same functionality of a PFObject, but also extends it with various user specific methods, like authentication, signing up, and validation uniqueness.

    -

    Many APIs responsible for linking a PFUser with Facebook or Twitter have been deprecated in favor of dedicated -utilities for each social network. See PFFacebookUtils, PFTwitterUtils and PFAnonymousUtils for more information.

    - @@ -253,7 +250,7 @@

    PFUser

    -

    Accessing the Current User

    +

    Accessing the Current User

    @@ -314,12 +311,12 @@

    Return Value

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)getCurrentUserInBackground;
    +
    + (id)getCurrentUserInBackground;

    Swift

    -
    class func getCurrentUserInBackground() -> BFTask<PFUser>
    +
    class func getCurrentUserInBackground() -> Any!
    @@ -379,8 +376,6 @@

    Declaration

    Whether the PFUser was just created from a request.

    -

    This is only set after a Facebook or Twitter login.

    -

    Declaration

    @@ -442,7 +437,7 @@

    Declaration

    -

    Creating a New User

    +

    Creating a New User

    @@ -498,7 +493,7 @@

    Return Value

    or once an object with a relation to that user or an ACL that refers to the user has been saved.

    Warning

    - PFObject.-saveEventually will not work on if an item being saved has a relation + PFObject. will not work on if an item being saved has a relation to an automatic user that has never been saved.
    @@ -647,12 +642,12 @@

    Declaration

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)signUpInBackground;
    +
    - (id)signUpInBackground;

    Swift

    -
    func signUpInBackground() -> BFTask<NSNumber>
    +
    func signUpInBackground() -> Any!
    @@ -730,7 +725,7 @@

    Parameters

    -

    Logging In

    +

    Logging In

    @@ -758,14 +753,13 @@

    Logging In

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)
    -    logInWithUsernameInBackground:(nonnull NSString *)username
    -                         password:(nonnull NSString *)password;
    +
    + (id)logInWithUsernameInBackground:(nonnull NSString *)username
    +                           password:(nonnull NSString *)password;

    Swift

    -
    class func logInWithUsername(inBackground username: String, password: String) -> BFTask<PFUser>
    +
    class func logInWithUsername(inBackground username: String, password: String) -> Any!
    @@ -896,7 +890,7 @@

    Parameters

    -

    Becoming a User

    +

    Becoming a User

    @@ -924,13 +918,12 @@

    Becoming a User

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)becomeInBackground:
    -    (nonnull NSString *)sessionToken;
    +
    + (id)becomeInBackground:(nonnull NSString *)sessionToken;

    Swift

    -
    class func become(inBackground sessionToken: String) -> BFTask<PFUser>
    +
    class func become(inBackground sessionToken: String) -> Any!
    @@ -1036,7 +1029,7 @@

    Parameters

    -

    Revocable Session

    +

    Revocable Session

    @@ -1065,12 +1058,12 @@

    Revocable Session

    Declaration

    Objective-C

    -
    + (nonnull BFTask *)enableRevocableSessionInBackground;
    +
    + (id)enableRevocableSessionInBackground;

    Swift

    -
    class func enableRevocableSessionInBackground() -> BFTask<AnyObject>
    +
    class func enableRevocableSessionInBackground() -> Any!
    @@ -1146,7 +1139,7 @@

    Parameters

    -

    Logging Out

    +

    Logging Out

    @@ -1175,12 +1168,12 @@

    Logging Out

    Declaration

    Objective-C

    -
    + (nonnull BFTask *)logOutInBackground;
    +
    + (id)logOutInBackground;

    Swift

    -
    class func logOutInBackground() -> BFTask<AnyObject>
    +
    class func logOutInBackground() -> Any!
    @@ -1254,7 +1247,7 @@

    Parameters

    -

    Requesting a Password Reset

    +

    Requesting a Password Reset

    @@ -1281,13 +1274,12 @@

    Requesting a Password Reset

    Declaration

    Objective-C

    -
    + (nonnull BFTask<NSNumber *> *)requestPasswordResetForEmailInBackground:
    -    (nonnull NSString *)email;
    +
    + (id)requestPasswordResetForEmailInBackground:(nonnull NSString *)email;

    Swift

    -
    class func requestPasswordResetForEmail(inBackground email: String) -> BFTask<NSNumber>
    +
    class func requestPasswordResetForEmail(inBackground email: String) -> Any!
    @@ -1394,7 +1386,7 @@

    Parameters

    -

    Third-party Authentication

    +

    Third-party Authentication

    @@ -1559,16 +1551,15 @@

    Parameters

    Declaration

    Objective-C

    -
    + (nonnull BFTask<__kindof PFUser *> *)
    -    logInWithAuthTypeInBackground:(nonnull NSString *)authType
    -                         authData:
    -                             (nonnull NSDictionary<NSString *, NSString *> *)
    -                                 authData;
    +
    + (id)logInWithAuthTypeInBackground:(nonnull NSString *)authType
    +                           authData:
    +                               (nonnull NSDictionary<NSString *, NSString *> *)
    +                                   authData;

    Swift

    -
    class func logInWithAuthType(inBackground authType: String, authData: [String : String]) -> BFTask<PFUser>
    +
    class func logInWithAuthType(inBackground authType: String, authData: [String : String]) -> Any!
    @@ -1639,16 +1630,15 @@

    Return Value

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)
    -    linkWithAuthTypeInBackground:(nonnull NSString *)authType
    -                        authData:
    -                            (nonnull NSDictionary<NSString *, NSString *> *)
    -                                authData;
    +
    - (id)linkWithAuthTypeInBackground:(nonnull NSString *)authType
    +                          authData:
    +                              (nonnull NSDictionary<NSString *, NSString *> *)
    +                                  authData;

    Swift

    -
    func linkWithAuthType(inBackground authType: String, authData: [String : String]) -> BFTask<NSNumber>
    +
    func linkWithAuthType(inBackground authType: String, authData: [String : String]) -> Any!
    @@ -1719,13 +1709,12 @@

    Return Value

    Declaration

    Objective-C

    -
    - (nonnull BFTask<NSNumber *> *)unlinkWithAuthTypeInBackground:
    -    (nonnull NSString *)authType;
    +
    - (id)unlinkWithAuthTypeInBackground:(nonnull NSString *)authType;

    Swift

    -
    func unlinkWithAuthType(inBackground authType: String) -> BFTask<NSNumber>
    +
    func unlinkWithAuthType(inBackground authType: String) -> Any!
    @@ -1827,7 +1816,7 @@

    Return Value

    -

    Creating a New User

    +

    Creating a New User

    @@ -1846,7 +1835,7 @@

    Creating a New User

    Deprecated

    -

    Please use PFUser.-signUpInBackgroundWithBlock: instead.

    +

    Please use PFUser.-signUpInBackgroundWithBlock: instead.

    @@ -1859,7 +1848,7 @@

    Creating a New User

    -

    @deprecated Please use PFUser.-signUpInBackgroundWithBlock: instead.

    +

    @deprecated Please use PFUser.-signUpInBackgroundWithBlock: instead.

    @@ -1921,7 +1910,7 @@

    Parameters

    -

    Logging In

    +

    Logging In

    @@ -2035,7 +2024,7 @@

    Parameters

    -

    Becoming a User

    +

    Becoming a User

    @@ -2136,7 +2125,7 @@

    Parameters

    -

    Requesting a Password Reset

    +

    Requesting a Password Reset

    @@ -2239,7 +2228,7 @@

    Parameters

    -

    Creating a New User

    +

    Creating a New User

    @@ -2352,7 +2341,7 @@

    Return Value

    -

    Logging In

    +

    Logging In

    @@ -2517,7 +2506,7 @@

    Return Value

    -

    Becoming a User

    +

    Becoming a User

    @@ -2656,7 +2645,7 @@

    Return Value

    -

    Logging Out

    +

    Logging Out

    @@ -2701,7 +2690,7 @@

    Declaration

    -

    Requesting a Password Reset

    +

    Requesting a Password Reset

    @@ -2838,9 +2827,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/Parse.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/Parse.html index 7c3658406..930d4da18 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/Parse.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/Parse.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -248,7 +248,7 @@

    Parse

    -

    Connecting to Parse

    +

    Connecting to Parse

    @@ -514,7 +514,7 @@

    Declaration

    -

    Enabling Local Datastore

    +

    Enabling Local Datastore

    @@ -596,7 +596,7 @@

    Return Value

    -

    Enabling Extensions Data Sharing

    +

    Enabling Extensions Data Sharing

    @@ -816,7 +816,7 @@

    Return Value

    -

    Logging

    +

    Logging

    @@ -876,9 +876,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/ParseClientConfiguration.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/ParseClientConfiguration.html index 5e4152cac..57a0d9e2b 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/ParseClientConfiguration.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Classes/ParseClientConfiguration.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -253,7 +253,7 @@

    ParseClientConfiguration

    -

    Connecting to Parse

    +

    Connecting to Parse

    @@ -390,7 +390,7 @@

    Declaration

    -

    Enabling Local Datastore

    +

    Enabling Local Datastore

    @@ -438,7 +438,7 @@

    Declaration

    -

    Enabling Extensions Data Sharing

    +

    Enabling Extensions Data Sharing

    @@ -523,7 +523,7 @@

    Declaration

    -

    Network Properties

    +

    Network Properties

    @@ -602,7 +602,7 @@

    Declaration

    -

    Creating a Configuration

    +

    Creating a Configuration

    @@ -681,9 +681,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Constants.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Constants.html index a8ece5b35..93e474959 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Constants.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Constants.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    Constants

    -

    Platform

    +

    Platform

    @@ -281,7 +281,7 @@

    Declaration

    -

    Errors

    +

    Errors

    @@ -326,7 +326,7 @@

    Declaration

    -

    Network Notifications

    +

    Network Notifications

    @@ -578,7 +578,7 @@

    Declaration

    -

    Notifications

    +

    Notifications

    @@ -623,9 +623,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums.html index 0ff5fa720..a6fdf6089 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -236,7 +236,7 @@

    Enumerations

    -

    Cache Policies

    +

    Cache Policies

    @@ -295,7 +295,7 @@

    Declaration

    -

    Logging Levels

    +

    Logging Levels

    @@ -350,7 +350,7 @@

    Declaration

    -

    Errors

    +

    Errors

    @@ -398,9 +398,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFCachePolicy.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFCachePolicy.html index 620b0b763..9d395cbb7 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFCachePolicy.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFCachePolicy.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -463,9 +463,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFErrorCode.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFErrorCode.html index 3f77b2d16..1fe59a07d 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFErrorCode.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFErrorCode.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -1755,38 +1755,6 @@

    Declaration

  • -
  • - -
    -
    -
    -
    -
    -

    An existing Facebook account already linked to another user.

    - -
    -
    -

    Declaration

    -
    -

    Objective-C

    -
    kPFErrorFacebookAccountAlreadyLinked = 208
    - -
    -
    -

    Swift

    -
    case errorFacebookAccountAlreadyLinked = 208
    - -
    -
    -
    -
    -
  • @@ -1812,7 +1780,7 @@

    Declaration

    Swift

    -
    static var errorAccountAlreadyLinked: PFErrorCode { get }
    +
    case errorAccountAlreadyLinked = 208
    @@ -1883,38 +1851,6 @@

    Declaration

  • -
  • - -
    -
    -
    -
    -
    -

    Facebook id missing from request.

    - -
    -
    -

    Declaration

    -
    -

    Objective-C

    -
    kPFErrorFacebookIdMissing = 250
    - -
    -
    -

    Swift

    -
    case errorFacebookIdMissing = 250
    - -
    -
    -
    -
    -
  • @@ -1940,39 +1876,7 @@

    Declaration

    Swift

    -
    static var errorLinkedIdMissing: PFErrorCode { get }
    - -
    - - - -
  • -
  • - -
    -
    -
    -
    -
    -

    Invalid Facebook session.

    - -
    -
    -

    Declaration

    -
    -

    Objective-C

    -
    kPFErrorFacebookInvalidSession = 251
    - -
    -
    -

    Swift

    -
    case errorFacebookInvalidSession = 251
    +
    case errorLinkedIdMissing = 250
    @@ -2004,7 +1908,7 @@

    Declaration

    Swift

    -
    static var errorInvalidLinkedSession: PFErrorCode { get }
    +
    case errorInvalidLinkedSession = 251
    @@ -2019,9 +1923,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFLogLevel.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFLogLevel.html index b03476a07..da9df82fb 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFLogLevel.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Enums/PFLogLevel.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -439,9 +439,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols.html index a8ae50de3..b932222f3 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -386,9 +386,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFFileUploadController.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFFileUploadController.html index 505cd9cc1..c9dee9293 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFFileUploadController.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFFileUploadController.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -271,13 +271,13 @@

    Declaration

    fileName:(NSString *_Nullable)fileName mimeType:(NSString *_Nullable)mimeType sessionToken:(NSString *_Nonnull)sessionToken - cancellationToken:(BFCancellationToken *_Nonnull)cancellationToken + cancellationToken:(id)cancellationToken progressBlock:(PFProgressBlock _Nonnull)progressBlock;

    Swift

    -
    func uploadSourceFilePath(_ sourceFilePath: String, fileName: String?, mimeType: String?, sessionToken: String, cancellationToken: BFCancellationToken, progressBlock: Any!) -> BFTask<PFFileUploadResult>
    +
    func uploadSourceFilePath(_ sourceFilePath: String, fileName: String?, mimeType: String?, sessionToken: String, cancellationToken: Any!, progressBlock: Any!) -> Any!
    @@ -375,9 +375,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFSubclassing.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFSubclassing.html index 4eea978df..63bcbfeab 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFSubclassing.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFSubclassing.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -297,7 +297,7 @@

    Declaration

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    Calling PFObject.dataAvailable on this object will return NO -until PFObject.-fetchIfNeeded has been called. No network request will be made. +until PFObject. has been called. No network request will be made. A default implementation is provided by PFObject which should always be sufficient.

    @@ -482,9 +482,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFUserAuthenticationDelegate.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFUserAuthenticationDelegate.html index b913b54fb..5ac2f2ed5 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFUserAuthenticationDelegate.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/PFUserAuthenticationDelegate.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -315,9 +315,8 @@

    Return Value

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/ParseMutableClientConfiguration.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/ParseMutableClientConfiguration.html index 5ae0cda6f..7e1b5d179 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/ParseMutableClientConfiguration.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Protocols/ParseMutableClientConfiguration.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -255,7 +255,7 @@

    ParseMutableClientConfiguration

    -

    Connecting to Parse

    +

    Connecting to Parse

    @@ -397,7 +397,7 @@

    Declaration

    -

    Enabling Local Datastore

    +

    Enabling Local Datastore

    @@ -445,7 +445,7 @@

    Declaration

    -

    Enabling Extensions Data Sharing

    +

    Enabling Extensions Data Sharing

    @@ -530,7 +530,7 @@

    Declaration

    -

    Network Properties

    +

    Network Properties

    @@ -607,9 +607,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/Type Definitions.html b/api/docsets/Parse.docset/Contents/Resources/Documents/Type Definitions.html index 07fe3a3e2..49016aacc 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/Type Definitions.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/Type Definitions.html @@ -21,27 +21,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -49,7 +49,7 @@ @@ -273,9 +273,8 @@

    Declaration

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/css/highlight.css b/api/docsets/Parse.docset/Contents/Resources/Documents/css/highlight.css index d0db0e13b..c170357ce 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/css/highlight.css +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/css/highlight.css @@ -1,200 +1,202 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ /* Credit to https://gist.github.com/wataru420/2048287 */ -.highlight { - /* Comment */ - /* Error */ - /* Keyword */ - /* Operator */ - /* Comment.Multiline */ - /* Comment.Preproc */ - /* Comment.Single */ - /* Comment.Special */ - /* Generic.Deleted */ - /* Generic.Deleted.Specific */ - /* Generic.Emph */ - /* Generic.Error */ - /* Generic.Heading */ - /* Generic.Inserted */ - /* Generic.Inserted.Specific */ - /* Generic.Output */ - /* Generic.Prompt */ - /* Generic.Strong */ - /* Generic.Subheading */ - /* Generic.Traceback */ - /* Keyword.Constant */ - /* Keyword.Declaration */ - /* Keyword.Pseudo */ - /* Keyword.Reserved */ - /* Keyword.Type */ - /* Literal.Number */ - /* Literal.String */ - /* Name.Attribute */ - /* Name.Builtin */ - /* Name.Class */ - /* Name.Constant */ - /* Name.Entity */ - /* Name.Exception */ - /* Name.Function */ - /* Name.Namespace */ - /* Name.Tag */ - /* Name.Variable */ - /* Operator.Word */ - /* Text.Whitespace */ - /* Literal.Number.Float */ - /* Literal.Number.Hex */ - /* Literal.Number.Integer */ - /* Literal.Number.Oct */ - /* Literal.String.Backtick */ - /* Literal.String.Char */ - /* Literal.String.Doc */ - /* Literal.String.Double */ - /* Literal.String.Escape */ - /* Literal.String.Heredoc */ - /* Literal.String.Interpol */ - /* Literal.String.Other */ - /* Literal.String.Regex */ - /* Literal.String.Single */ - /* Literal.String.Symbol */ - /* Name.Builtin.Pseudo */ - /* Name.Variable.Class */ - /* Name.Variable.Global */ - /* Name.Variable.Instance */ - /* Literal.Number.Integer.Long */ } - .highlight .c { - color: #999988; - font-style: italic; } - .highlight .err { - color: #a61717; - background-color: #e3d2d2; } - .highlight .k { - color: #000000; - font-weight: bold; } - .highlight .o { - color: #000000; - font-weight: bold; } - .highlight .cm { - color: #999988; - font-style: italic; } - .highlight .cp { - color: #999999; - font-weight: bold; } - .highlight .c1 { - color: #999988; - font-style: italic; } - .highlight .cs { - color: #999999; - font-weight: bold; - font-style: italic; } - .highlight .gd { - color: #000000; - background-color: #ffdddd; } - .highlight .gd .x { - color: #000000; - background-color: #ffaaaa; } - .highlight .ge { - color: #000000; - font-style: italic; } - .highlight .gr { - color: #aa0000; } - .highlight .gh { - color: #999999; } - .highlight .gi { - color: #000000; - background-color: #ddffdd; } - .highlight .gi .x { - color: #000000; - background-color: #aaffaa; } - .highlight .go { - color: #888888; } - .highlight .gp { - color: #555555; } - .highlight .gs { - font-weight: bold; } - .highlight .gu { - color: #aaaaaa; } - .highlight .gt { - color: #aa0000; } - .highlight .kc { - color: #000000; - font-weight: bold; } - .highlight .kd { - color: #000000; - font-weight: bold; } - .highlight .kp { - color: #000000; - font-weight: bold; } - .highlight .kr { - color: #000000; - font-weight: bold; } - .highlight .kt { - color: #445588; } - .highlight .m { - color: #009999; } - .highlight .s { - color: #d14; } - .highlight .na { - color: #008080; } - .highlight .nb { - color: #0086B3; } - .highlight .nc { - color: #445588; - font-weight: bold; } - .highlight .no { - color: #008080; } - .highlight .ni { - color: #800080; } - .highlight .ne { - color: #990000; - font-weight: bold; } - .highlight .nf { - color: #990000; } - .highlight .nn { - color: #555555; } - .highlight .nt { - color: #000080; } - .highlight .nv { - color: #008080; } - .highlight .ow { - color: #000000; - font-weight: bold; } - .highlight .w { - color: #bbbbbb; } - .highlight .mf { - color: #009999; } - .highlight .mh { - color: #009999; } - .highlight .mi { - color: #009999; } - .highlight .mo { - color: #009999; } - .highlight .sb { - color: #d14; } - .highlight .sc { - color: #d14; } - .highlight .sd { - color: #d14; } - .highlight .s2 { - color: #d14; } - .highlight .se { - color: #d14; } - .highlight .sh { - color: #d14; } - .highlight .si { - color: #d14; } - .highlight .sx { - color: #d14; } - .highlight .sr { - color: #009926; } - .highlight .s1 { - color: #d14; } - .highlight .ss { - color: #990073; } - .highlight .bp { - color: #999999; } - .highlight .vc { - color: #008080; } - .highlight .vg { - color: #008080; } - .highlight .vi { - color: #008080; } - .highlight .il { - color: #009999; } +.highlight .c { + color: #999988; + font-style: italic; } + +.highlight .err { + color: #a61717; + background-color: #e3d2d2; } + +.highlight .k { + color: #000000; + font-weight: bold; } + +.highlight .o { + color: #000000; + font-weight: bold; } + +.highlight .cm { + color: #999988; + font-style: italic; } + +.highlight .cp { + color: #999999; + font-weight: bold; } + +.highlight .c1 { + color: #999988; + font-style: italic; } + +.highlight .cs { + color: #999999; + font-weight: bold; + font-style: italic; } + +.highlight .gd { + color: #000000; + background-color: #ffdddd; } + +.highlight .gd .x { + color: #000000; + background-color: #ffaaaa; } + +.highlight .ge { + color: #000000; + font-style: italic; } + +.highlight .gr { + color: #aa0000; } + +.highlight .gh { + color: #999999; } + +.highlight .gi { + color: #000000; + background-color: #ddffdd; } + +.highlight .gi .x { + color: #000000; + background-color: #aaffaa; } + +.highlight .go { + color: #888888; } + +.highlight .gp { + color: #555555; } + +.highlight .gs { + font-weight: bold; } + +.highlight .gu { + color: #aaaaaa; } + +.highlight .gt { + color: #aa0000; } + +.highlight .kc { + color: #000000; + font-weight: bold; } + +.highlight .kd { + color: #000000; + font-weight: bold; } + +.highlight .kp { + color: #000000; + font-weight: bold; } + +.highlight .kr { + color: #000000; + font-weight: bold; } + +.highlight .kt { + color: #445588; } + +.highlight .m { + color: #009999; } + +.highlight .s { + color: #d14; } + +.highlight .na { + color: #008080; } + +.highlight .nb { + color: #0086B3; } + +.highlight .nc { + color: #445588; + font-weight: bold; } + +.highlight .no { + color: #008080; } + +.highlight .ni { + color: #800080; } + +.highlight .ne { + color: #990000; + font-weight: bold; } + +.highlight .nf { + color: #990000; } + +.highlight .nn { + color: #555555; } + +.highlight .nt { + color: #000080; } + +.highlight .nv { + color: #008080; } + +.highlight .ow { + color: #000000; + font-weight: bold; } + +.highlight .w { + color: #bbbbbb; } + +.highlight .mf { + color: #009999; } + +.highlight .mh { + color: #009999; } + +.highlight .mi { + color: #009999; } + +.highlight .mo { + color: #009999; } + +.highlight .sb { + color: #d14; } + +.highlight .sc { + color: #d14; } + +.highlight .sd { + color: #d14; } + +.highlight .s2 { + color: #d14; } + +.highlight .se { + color: #d14; } + +.highlight .sh { + color: #d14; } + +.highlight .si { + color: #d14; } + +.highlight .sx { + color: #d14; } + +.highlight .sr { + color: #009926; } + +.highlight .s1 { + color: #d14; } + +.highlight .ss { + color: #990073; } + +.highlight .bp { + color: #999999; } + +.highlight .vc { + color: #008080; } + +.highlight .vg { + color: #008080; } + +.highlight .vi { + color: #008080; } + +.highlight .il { + color: #009999; } diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/css/jazzy.css b/api/docsets/Parse.docset/Contents/Resources/Documents/css/jazzy.css index ff59f5f86..c7bb9fe22 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/css/jazzy.css +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/css/jazzy.css @@ -1,3 +1,7 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ *, *:before, *:after { box-sizing: inherit; } @@ -83,6 +87,11 @@ th, td { padding: 6px 13px; border: 1px solid #ddd; } +hr { + height: 1px; + border: none; + background-color: #ddd; } + pre { margin: 0 0 1.275em; padding: .85em 1em; @@ -129,8 +138,8 @@ pre code { color: #fff; } .header-icon { - padding-right: 6px; - vertical-align: -4px; + padding-right: 2px; + vertical-align: -3px; height: 16px; } .breadcrumbs { diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/index.html b/api/docsets/Parse.docset/Contents/Resources/Documents/index.html index 26ffd9c7a..49f09c51d 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/index.html +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/index.html @@ -20,27 +20,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -48,7 +48,7 @@ @@ -234,6 +234,12 @@

    iOS · iPadOS · macOS · watchOS · tvOS

    Coverage auto-release

    +

    iOS +iPad +macOS +watchOS +tvOS

    +

    SPM

    Backers on Open Collective @@ -249,13 +255,7 @@

    iOS · iPadOS · macOS · watchOS · tvOS


    @@ -274,27 +274,6 @@

    Getting Started

    Take a look at the public documentation & API and start building.

    -

    Alternative Installation Options

    -

    Compile Source

    - -

    If you want to manually compile the SDK, clone it locally, and run the following commands in the root directory of the repository:

    -
    # To pull in extra dependencies (Bolts and OCMock)
    -git submodule update --init --recursive
    -
    -# To install bundler
    -gem install bundler
    -
    -# To install all the gems via bundler
    -bundle install
    -
    -# Build & Package the Frameworks
    -bundle exec rake package:frameworks
    -
    - -

    Compiled frameworks will be inside the build/release folder.

    -

    Add Sub-Project

    - -

    You can also include parse as a subproject inside of your application if you’d prefer, although we do not recommend this, as it will increase your indexing time significantly. To do so, just drag and drop the Parse.xcodeproj file into your workspace. Note that unit tests will be unavailable if you use Parse like this, as OCMock will be unable to be found.

    How Do I Contribute?

    We want to make contributing to this project as easy and transparent as possible. Please refer to the Contribution Guidelines.

    @@ -314,9 +293,8 @@

    Dependencies

    - diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.js b/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.js index 1e55d6ef0..198441660 100755 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.js +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.js @@ -1,3 +1,7 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + window.jazzy = {'docset': false} if (typeof window.dash != 'undefined') { document.documentElement.className += ' dash' diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.search.js b/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.search.js index e3d1ab905..359cdbb8b 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.search.js +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/js/jazzy.search.js @@ -1,3 +1,7 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + $(function(){ var $typeahead = $('[data-typeahead]'); var $form = $typeahead.parents('form'); diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/js/jquery.min.js b/api/docsets/Parse.docset/Contents/Resources/Documents/js/jquery.min.js index b0614034a..7f37b5d99 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/js/jquery.min.js +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/js/jquery.min.js @@ -1,2 +1,2 @@ -/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
    ",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},M=function(){V()},R=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&U(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function z(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&R(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function X(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function U(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,r.msMatchesSelector&&ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",M),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Re(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
    ",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return M(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return M(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.on("mouseenter",e).on("mouseleave",t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 00){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); +!function(){var e=function(t){var r=new e.Builder;return r.pipeline.add(e.trimmer,e.stopWordFilter,e.stemmer),r.searchPipeline.add(e.stemmer),t.call(r,r),r.build()};e.version="2.3.9",e.utils={},e.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),e.utils.asString=function(e){return void 0===e||null===e?"":e.toString()},e.utils.clone=function(e){if(null===e||void 0===e)return e;for(var t=Object.create(null),r=Object.keys(e),i=0;i0){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); diff --git a/api/docsets/Parse.docset/Contents/Resources/Documents/search.json b/api/docsets/Parse.docset/Contents/Resources/Documents/search.json index 4b43a593c..60ad507bb 100644 --- a/api/docsets/Parse.docset/Contents/Resources/Documents/search.json +++ b/api/docsets/Parse.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Type%20Definitions.html#/c:PFQuery.h@T@PFQueryArrayResultBlock":{"name":"PFQueryArrayResultBlock","abstract":"
    "},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    Sets a custom file upload controller that uploads PFFiles using its own policy.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    A custom NSURLSessionConfiguration configuration that will be used from the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/PFUserAuthenticationDelegate.html#/c:objc(pl)PFUserAuthenticationDelegate(im)restoreAuthenticationWithAuthData:":{"name":"-restoreAuthenticationWithAuthData:","abstract":"

    Called when restoring third party authentication credentials that have been serialized,","parent_name":"PFUserAuthenticationDelegate"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)parseClassName":{"name":"+parseClassName","abstract":"

    The name of the class as seen in the REST API.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)query":{"name":"+query","abstract":"

    Create a query which returns objects of this type.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of this type with a given predicate.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Lets Parse know this class should be used to instantiate all objects with class type parseClassName.

    ","parent_name":"PFSubclassing"},"Protocols/PFFileUploadController.html#/c:objc(pl)PFFileUploadController(im)uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:":{"name":"-uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:","abstract":"

    Uploads a file asynchronously from file path for a given file state.

    ","parent_name":"PFFileUploadController"},"Protocols/PFFileUploadController.html":{"name":"PFFileUploadController","abstract":"

    A policy interface for overriding the default upload behavior of uploading a PFFileObject"},"Protocols/PFSubclassing.html":{"name":"PFSubclassing","abstract":"

    If a subclass of PFObject conforms to PFSubclassing and calls PFObject.+registerSubclass,"},"Protocols/PFUserAuthenticationDelegate.html":{"name":"PFUserAuthenticationDelegate","abstract":"

    Provides a general interface for delegation of third party authentication with PFUsers.

    "},"Protocols/ParseMutableClientConfiguration.html":{"name":"ParseMutableClientConfiguration","abstract":"

    The ParseMutableClientConfiguration represents a ParseClientConfiguration object that can be mutated.

    "},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInternalServer":{"name":"kPFErrorInternalServer","abstract":"

    Internal server error. No information available.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorConnectionFailed":{"name":"kPFErrorConnectionFailed","abstract":"

    The connection to the Parse servers failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectNotFound":{"name":"kPFErrorObjectNotFound","abstract":"

    Object doesn’t exist, or has an incorrect password.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidQuery":{"name":"kPFErrorInvalidQuery","abstract":"

    You tried to find values matching a datatype that doesn’t","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidClassName":{"name":"kPFErrorInvalidClassName","abstract":"

    Missing or invalid classname. Classnames are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorMissingObjectId":{"name":"kPFErrorMissingObjectId","abstract":"

    Missing object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidKeyName":{"name":"kPFErrorInvalidKeyName","abstract":"

    Invalid key name. Keys are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPointer":{"name":"kPFErrorInvalidPointer","abstract":"

    Malformed pointer. Pointers must be arrays of a classname and an object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidJSON":{"name":"kPFErrorInvalidJSON","abstract":"

    Malformed json object. A json dictionary is expected.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCommandUnavailable":{"name":"kPFErrorCommandUnavailable","abstract":"

    Tried to access a feature only available internally.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorIncorrectType":{"name":"kPFErrorIncorrectType","abstract":"

    Field set to incorrect type.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidChannelName":{"name":"kPFErrorInvalidChannelName","abstract":"

    Invalid channel name. A channel name is either an empty string (the broadcast channel)","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidDeviceToken":{"name":"kPFErrorInvalidDeviceToken","abstract":"

    Invalid device token.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPushMisconfigured":{"name":"kPFErrorPushMisconfigured","abstract":"

    Push is misconfigured. See details to find out how.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectTooLarge":{"name":"kPFErrorObjectTooLarge","abstract":"

    The object is too large.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorOperationForbidden":{"name":"kPFErrorOperationForbidden","abstract":"

    That operation isn’t allowed for clients.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCacheMiss":{"name":"kPFErrorCacheMiss","abstract":"

    The results were not found in the cache.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidNestedKey":{"name":"kPFErrorInvalidNestedKey","abstract":"

    Keys in NSDictionary values may not include $ or ..

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidFileName":{"name":"kPFErrorInvalidFileName","abstract":"

    Invalid file name.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidACL":{"name":"kPFErrorInvalidACL","abstract":"

    Invalid ACL. An ACL with an invalid format was saved. This should not happen if you use PFACL.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorTimeout":{"name":"kPFErrorTimeout","abstract":"

    The request timed out on the server. Typically this indicates the request is too expensive.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEmailAddress":{"name":"kPFErrorInvalidEmailAddress","abstract":"

    The email address was invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorDuplicateValue":{"name":"kPFErrorDuplicateValue","abstract":"

    A unique field was given a value that is already taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidRoleName":{"name":"kPFErrorInvalidRoleName","abstract":"

    Role’s name is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorExceededQuota":{"name":"kPFErrorExceededQuota","abstract":"

    Exceeded an application quota. Upgrade to resolve.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFScriptError":{"name":"kPFScriptError","abstract":"

    Cloud Code script had an error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFValidationError":{"name":"kPFValidationError","abstract":"

    Cloud Code validation failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorReceiptMissing":{"name":"kPFErrorReceiptMissing","abstract":"

    Product purchase receipt is missing.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPurchaseReceipt":{"name":"kPFErrorInvalidPurchaseReceipt","abstract":"

    Product purchase receipt is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPaymentDisabled":{"name":"kPFErrorPaymentDisabled","abstract":"

    Payment is disabled on this device.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidProductIdentifier":{"name":"kPFErrorInvalidProductIdentifier","abstract":"

    The product identifier is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductNotFoundInAppStore":{"name":"kPFErrorProductNotFoundInAppStore","abstract":"

    The product is not found in the App Store.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidServerResponse":{"name":"kPFErrorInvalidServerResponse","abstract":"

    The Apple server response is not valid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductDownloadFileSystemFailure":{"name":"kPFErrorProductDownloadFileSystemFailure","abstract":"

    Product fails to download due to file system error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidImageData":{"name":"kPFErrorInvalidImageData","abstract":"

    Fail to convert data to image.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUnsavedFile":{"name":"kPFErrorUnsavedFile","abstract":"

    Unsaved file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFileDeleteFailure":{"name":"kPFErrorFileDeleteFailure","abstract":"

    Fail to delete file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorRequestLimitExceeded":{"name":"kPFErrorRequestLimitExceeded","abstract":"

    Application has exceeded its request limit.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEventName":{"name":"kPFErrorInvalidEventName","abstract":"

    Invalid event name.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameMissing":{"name":"kPFErrorUsernameMissing","abstract":"

    Username is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserPasswordMissing":{"name":"kPFErrorUserPasswordMissing","abstract":"

    Password is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameTaken":{"name":"kPFErrorUsernameTaken","abstract":"

    Username has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailTaken":{"name":"kPFErrorUserEmailTaken","abstract":"

    Email has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailMissing":{"name":"kPFErrorUserEmailMissing","abstract":"

    The email is missing, and must be specified.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserWithEmailNotFound":{"name":"kPFErrorUserWithEmailNotFound","abstract":"

    A user with the specified email was not found.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCannotBeAlteredWithoutSession":{"name":"kPFErrorUserCannotBeAlteredWithoutSession","abstract":"

    The user cannot be altered by a client without the session.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCanOnlyBeCreatedThroughSignUp":{"name":"kPFErrorUserCanOnlyBeCreatedThroughSignUp","abstract":"

    Users can only be created through sign up.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFacebookAccountAlreadyLinked":{"name":"kPFErrorFacebookAccountAlreadyLinked","abstract":"

    An existing Facebook account already linked to another user.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorAccountAlreadyLinked":{"name":"kPFErrorAccountAlreadyLinked","abstract":"

    An existing account already linked to another user.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidSessionToken":{"name":"kPFErrorInvalidSessionToken","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserIdMismatch":{"name":"kPFErrorUserIdMismatch","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFacebookIdMissing":{"name":"kPFErrorFacebookIdMissing","abstract":"

    Facebook id missing from request.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorLinkedIdMissing":{"name":"kPFErrorLinkedIdMissing","abstract":"

    Linked id missing from request.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFacebookInvalidSession":{"name":"kPFErrorFacebookInvalidSession","abstract":"

    Invalid Facebook session.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidLinkedSession":{"name":"kPFErrorInvalidLinkedSession","abstract":"

    Invalid linked session.

    ","parent_name":"PFErrorCode"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelNone":{"name":"PFLogLevelNone","abstract":"

    Log level that disables all logging.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelError":{"name":"PFLogLevelError","abstract":"

    Log level that if set is going to output error messages to the log.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelWarning":{"name":"PFLogLevelWarning","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelInfo":{"name":"PFLogLevelInfo","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelDebug":{"name":"PFLogLevelDebug","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyIgnoreCache":{"name":"kPFCachePolicyIgnoreCache","abstract":"

    The query does not load from the cache or save results to the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheOnly":{"name":"kPFCachePolicyCacheOnly","abstract":"

    The query only loads from the cache, ignoring the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkOnly":{"name":"kPFCachePolicyNetworkOnly","abstract":"

    The query does not load from the cache, but it will save results to the cache.

    ","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheElseNetwork":{"name":"kPFCachePolicyCacheElseNetwork","abstract":"

    The query first tries to load from the cache, but if that fails, it loads results from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkElseCache":{"name":"kPFCachePolicyNetworkElseCache","abstract":"

    The query first tries to load from the network, but if that fails, it loads results from the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheThenNetwork":{"name":"kPFCachePolicyCacheThenNetwork","abstract":"

    The query first loads from the cache, then loads from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html":{"name":"PFCachePolicy","abstract":"

    PFCachePolicy specifies different caching policies that could be used with PFQuery.

    "},"Enums/PFLogLevel.html":{"name":"PFLogLevel","abstract":"

    PFLogLevel enum specifies different levels of logging that could be used to limit or display more messages in logs.

    "},"Enums/PFErrorCode.html":{"name":"PFErrorCode","abstract":"

    PFErrorCode enum contains all custom error codes that are used as code for NSError for callbacks on all classes.

    "},"Constants.html#/c:@kPFDeviceType":{"name":"kPFDeviceType","abstract":"
    "},"Constants.html#/c:@PFParseErrorDomain":{"name":"PFParseErrorDomain","abstract":"

    Error domain used for all NSErrors in the SDK.

    "},"Constants.html#/c:@PFNetworkWillSendURLRequestNotification":{"name":"PFNetworkWillSendURLRequestNotification","abstract":"

    The name of the notification that is going to be sent before any URL request is sent.

    "},"Constants.html#/c:@PFNetworkDidReceiveURLResponseNotification":{"name":"PFNetworkDidReceiveURLResponseNotification","abstract":"

    The name of the notification that is going to be sent after any URL response is received.

    "},"Constants.html#/c:@PFInvalidSessionTokenNotification":{"name":"PFInvalidSessionTokenNotification","abstract":"

    The name of the notification that is going to be sent when any request is failing with an invalid session token.

    "},"Constants.html#/c:@PFNetworkNotificationURLRequestUserInfoKey":{"name":"PFNetworkNotificationURLRequestUserInfoKey","abstract":"

    The key of request(NSURLRequest) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseUserInfoKey":{"name":"PFNetworkNotificationURLResponseUserInfoKey","abstract":"

    The key of response(NSHTTPURLResponse) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseBodyUserInfoKey":{"name":"PFNetworkNotificationURLResponseBodyUserInfoKey","abstract":"

    The key of repsonse body (usually NSString with JSON) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFObjectDefaultPin":{"name":"PFObjectDefaultPin","abstract":"

    The name of the default pin that for PFObject local data store.

    "},"Constants.html#/c:@PFParseInitializeDidCompleteNotification":{"name":"PFParseInitializeDidCompleteNotification","abstract":"

    For testing purposes. Allows testers to know when init is complete.

    "},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    The custom upload controller that synchronously uploads PFFiles using its own policy.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    The NSURLSessionConfiguration configuration used by the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(cm)configurationWithBlock:":{"name":"+configurationWithBlock:","abstract":"

    Create a new SDK configuration object. This will create a temporarily modifiable configuration, and pass it to a block","parent_name":"ParseClientConfiguration"},"Classes/Parse.html#/c:objc(cs)Parse(cm)setApplicationId:clientKey:":{"name":"+setApplicationId:clientKey:","abstract":"

    Sets the applicationId and clientKey of your application.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)initializeWithConfiguration:":{"name":"+initializeWithConfiguration:","abstract":"

    Sets the configuration to be used for the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)currentConfiguration":{"name":"currentConfiguration","abstract":"

    Gets the current configuration in use by the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)applicationId":{"name":"applicationId","abstract":"

    The current application id that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)clientKey":{"name":"clientKey","abstract":"

    The current client key that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)server":{"name":"server","abstract":"

    The current server URL to connect to Parse Server.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableLocalDatastore":{"name":"+enableLocalDatastore","abstract":"

    Enable pinning in your application. This must be called before your application can use","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)isLocalDatastoreEnabled":{"name":"isLocalDatastoreEnabled","abstract":"

    Flag that indicates whether Local Datastore is enabled.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:containingApplication:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:containingApplication:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)applicationGroupIdentifierForDataSharing":{"name":"+applicationGroupIdentifierForDataSharing","abstract":"

    Application Group Identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)containingApplicationBundleIdentifierForDataSharing":{"name":"+containingApplicationBundleIdentifierForDataSharing","abstract":"

    Containing application bundle identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)logLevel":{"name":"logLevel","abstract":"

    Gets or sets the level of logging to display.

    ","parent_name":"Parse"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)currentUser":{"name":"+currentUser","abstract":"

    Gets the currently logged in user from disk and returns an instance of it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)getCurrentUserInBackground":{"name":"+getCurrentUserInBackground","abstract":"

    Asynchronously loads the currently logged in user from disk and returns a task that encapsulates it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)isNew":{"name":"isNew","abstract":"

    Whether the PFUser was just created from a request.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)authenticated":{"name":"authenticated","abstract":"

    Whether the user is an authenticated object for the device.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)user":{"name":"+user","abstract":"

    Creates a new PFUser object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableAutomaticUser":{"name":"+enableAutomaticUser","abstract":"

    Enables automatic creation of anonymous users.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)username":{"name":"username","abstract":"

    The username for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)password":{"name":"password","abstract":"

    !","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)email":{"name":"email","abstract":"

    The email for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackground":{"name":"-signUpInBackground","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithBlock:":{"name":"-signUpInBackgroundWithBlock:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:":{"name":"+logInWithUsernameInBackground:password:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:block:":{"name":"+logInWithUsernameInBackground:password:block:","abstract":"

    Makes an asynchronous request to log in a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:":{"name":"+becomeInBackground:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:block:":{"name":"+becomeInBackground:block:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackground":{"name":"+enableRevocableSessionInBackground","abstract":"

    Enables revocable sessions and migrates the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackgroundWithBlock:":{"name":"+enableRevocableSessionInBackgroundWithBlock:","abstract":"

    Enables revocable sessions and upgrades the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackground":{"name":"+logOutInBackground","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackgroundWithBlock:":{"name":"+logOutInBackgroundWithBlock:","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:":{"name":"+requestPasswordResetForEmailInBackground:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:block:":{"name":"+requestPasswordResetForEmailInBackground:block:","abstract":"

    Send a password reset request asynchronously for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)registerAuthenticationDelegate:forAuthType:":{"name":"+registerAuthenticationDelegate:forAuthType:","abstract":"

    Registers a third party authentication delegate. If a delegate is already registered for the authType then","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)unregisterAuthenticationDelegateForAuthType:":{"name":"+unregisterAuthenticationDelegateForAuthType:","abstract":"

    Unregisters a third party authentication delegate. If no delegate is registered, this fails gracefully.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithAuthTypeInBackground:authData:":{"name":"+logInWithAuthTypeInBackground:authData:","abstract":"

    Logs in a user with third party authentication credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)linkWithAuthTypeInBackground:authData:":{"name":"-linkWithAuthTypeInBackground:authData:","abstract":"

    Links this user to a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)unlinkWithAuthTypeInBackground:":{"name":"-unlinkWithAuthTypeInBackground:","abstract":"

    Unlinks this user from a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)isLinkedWithAuthType:":{"name":"-isLinkedWithAuthType:","abstract":"

    Indicates whether this user is linked with a third party authentication library of a specific type.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithTarget:selector:":{"name":"-signUpInBackgroundWithTarget:selector:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:target:selector:":{"name":"+logInWithUsernameInBackground:password:target:selector:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:target:selector:":{"name":"+becomeInBackground:target:selector:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:target:selector:":{"name":"+requestPasswordResetForEmailInBackground:target:selector:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp":{"name":"-signUp","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp:":{"name":"-signUp:","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:":{"name":"+logInWithUsername:password:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:error:":{"name":"+logInWithUsername:password:error:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:":{"name":"+become:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:error:":{"name":"+become:error:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOut":{"name":"+logOut","abstract":"

    Synchronously* logs out the currently logged in user on disk.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:":{"name":"+requestPasswordResetForEmail:","abstract":"

    Synchronously Send a password reset request for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:error:":{"name":"+requestPasswordResetForEmail:error:","abstract":"

    Synchronously send a password reset request for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFSession.html#/c:objc(cs)PFSession(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token string for this session.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackground":{"name":"+getCurrentSessionInBackground","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackgroundWithBlock:":{"name":"+getCurrentSessionInBackgroundWithBlock:","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:":{"name":"-initWithName:","abstract":"

    Constructs a new PFRole with the given name.","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:acl:":{"name":"-initWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:":{"name":"+roleWithName:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:acl:":{"name":"+roleWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)name":{"name":"name","abstract":"

    Gets or sets the name for a role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)users":{"name":"users","abstract":"

    Gets the PFRelation for the PFUser objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)roles":{"name":"roles","abstract":"

    Gets the PFRelation for the PFRole objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(py)targetClass":{"name":"targetClass","abstract":"

    The name of the class of the target child objects.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)query":{"name":"-query","abstract":"

    Returns a PFQuery object that can be used to get objects in this relation.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)addObject:":{"name":"-addObject:","abstract":"

    Adds a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)removeObject:":{"name":"-removeObject:","abstract":"

    Removes a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes the query with a class name.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:":{"name":"+queryWithClassName:","abstract":"

    Returns a PFQuery for a given class.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:predicate:":{"name":"+queryWithClassName:predicate:","abstract":"

    Creates a PFQuery with the constraints given by predicate.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name to query for.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKey:":{"name":"-includeKey:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKeys:":{"name":"-includeKeys:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeAll":{"name":"-includeAll","abstract":"

    Make the query include all PFObjects that have a reference.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKey:":{"name":"-excludeKey:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKeys:":{"name":"-excludeKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)selectKeys:":{"name":"-selectKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to include only the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyExists:":{"name":"-whereKeyExists:","abstract":"

    Add a constraint that requires a particular key exists.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyDoesNotExist:":{"name":"-whereKeyDoesNotExist:","abstract":"

    Add a constraint that requires a key not exist.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:equalTo:":{"name":"-whereKey:equalTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be equal to the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThan:":{"name":"-whereKey:lessThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be less than the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThanOrEqualTo:":{"name":"-whereKey:lessThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThan:":{"name":"-whereKey:greaterThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThanOrEqualTo:":{"name":"-whereKey:greaterThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notEqualTo:":{"name":"-whereKey:notEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesText:":{"name":"-whereKey:matchesText:","abstract":"

    Add a constraint for finding string values that contain a provided","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedIn:":{"name":"-whereKey:containedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notContainedIn:":{"name":"-whereKey:notContainedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsAllObjectsInArray:":{"name":"-whereKey:containsAllObjectsInArray:","abstract":"

    Add a constraint to the query that requires a particular key’s array","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedBy:":{"name":"-whereKey:containedBy:","abstract":"

    Adds a constraint to the query that requires a particular key’s value to","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:":{"name":"-whereKey:nearGeoPoint:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinMiles:":{"name":"-whereKey:nearGeoPoint:withinMiles:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinKilometers:":{"name":"-whereKey:nearGeoPoint:withinKilometers:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinRadians:":{"name":"-whereKey:nearGeoPoint:withinRadians:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be near","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinGeoBoxFromSouthwest:toNortheast:":{"name":"-whereKey:withinGeoBoxFromSouthwest:toNortheast:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinPolygon:":{"name":"-whereKey:withinPolygon:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:polygonContains:":{"name":"-whereKey:polygonContains:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:":{"name":"-whereKey:matchesRegex:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:modifiers:":{"name":"-whereKey:matchesRegex:modifiers:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsString:":{"name":"-whereKey:containsString:","abstract":"

    Add a constraint for finding string values that contain a provided substring.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasPrefix:":{"name":"-whereKey:hasPrefix:","abstract":"

    Add a constraint for finding string values that start with a provided prefix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasSuffix:":{"name":"-whereKey:hasSuffix:","abstract":"

    Add a constraint for finding string values that end with a provided suffix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)orQueryWithSubqueries:":{"name":"+orQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the or of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)andQueryWithSubqueries:":{"name":"+andQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the and of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesKey:inQuery:":{"name":"-whereKey:matchesKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value matches a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchKey:inQuery:":{"name":"-whereKey:doesNotMatchKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value NOT match a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesQuery:":{"name":"-whereKey:matchesQuery:","abstract":"

    Add a constraint that requires that a key’s value matches a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchQuery:":{"name":"-whereKey:doesNotMatchQuery:","abstract":"

    Add a constraint that requires that a key’s value to not match a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByAscending:":{"name":"-orderByAscending:","abstract":"

    Sort the results in ascending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addAscendingOrder:":{"name":"-addAscendingOrder:","abstract":"

    Additionally sort in ascending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByDescending:":{"name":"-orderByDescending:","abstract":"

    Sort the results in descending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addDescendingOrder:":{"name":"-addDescendingOrder:","abstract":"

    Additionally sort in descending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptor:":{"name":"-orderBySortDescriptor:","abstract":"

    Sort the results using a given sort descriptor.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptors:":{"name":"-orderBySortDescriptors:","abstract":"

    Sort the results using a given array of sort descriptors.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:":{"name":"-getObjectInBackgroundWithId:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:block:":{"name":"-getObjectInBackgroundWithId:block:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryForUser":{"name":"+queryForUser","abstract":"

    @deprecated Please use [PFUser query] instead.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackground":{"name":"-findObjectsInBackground","abstract":"

    Finds objects asynchronously and sets the NSArray of PFObject objects as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithBlock:":{"name":"-findObjectsInBackgroundWithBlock:","abstract":"

    Finds objects asynchronously and calls the given block with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackground":{"name":"-getFirstObjectInBackground","abstract":"

    Gets an object asynchronously and sets it as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithBlock:":{"name":"-getFirstObjectInBackgroundWithBlock:","abstract":"

    Gets an object asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackground":{"name":"-countObjectsInBackground","abstract":"

    Counts objects asynchronously and sets NSNumber with count as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithBlock:":{"name":"-countObjectsInBackgroundWithBlock:","abstract":"

    Counts objects asynchronously and calls the given block with the counts.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current network request (if any). Ensures that callbacks won’t be called.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)limit":{"name":"limit","abstract":"

    A limit on the number of objects to return. The default limit is 100, with a","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)skip":{"name":"skip","abstract":"

    The number of objects to skip before returning any.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)cachePolicy":{"name":"cachePolicy","abstract":"

    The cache policy to use for requests.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)maxCacheAge":{"name":"maxCacheAge","abstract":"

    The age after which a cached value will be ignored

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)hasCachedResult":{"name":"hasCachedResult","abstract":"

    Returns whether there is a cached result for this query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)clearCachedResult":{"name":"-clearCachedResult","abstract":"

    Clears the cached result for this query. If there is no cached result, this is a noop.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)clearAllCachedResults":{"name":"+clearAllCachedResults","abstract":"

    Clears the cached results for all queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromLocalDatastore":{"name":"-fromLocalDatastore","abstract":"

    Change the source of this query to all pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPin":{"name":"-fromPin","abstract":"

    Change the source of this query to the default group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPinWithName:":{"name":"-fromPinWithName:","abstract":"

    Change the source of this query to a specific group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)ignoreACLs":{"name":"-ignoreACLs","abstract":"

    Ignore ACLs when querying from the Local Datastore.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)trace":{"name":"trace","abstract":"

    Whether or not performance tracing should be done on the query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:target:selector:":{"name":"-getObjectInBackgroundWithId:target:selector:","abstract":"

    Gets a PFObject asynchronously.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithTarget:selector:":{"name":"-findObjectsInBackgroundWithTarget:selector:","abstract":"

    Finds objects asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithTarget:selector:":{"name":"-getFirstObjectInBackgroundWithTarget:selector:","abstract":"

    Gets an object asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithTarget:selector:":{"name":"-countObjectsInBackgroundWithTarget:selector:","abstract":"

    Counts objects asynchronously and calls the given callback with the count.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:":{"name":"+getObjectOfClass:objectId:","abstract":"

    Returns a PFObject with a given class and id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:error:":{"name":"+getObjectOfClass:objectId:error:","abstract":"

    Returns a PFObject with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:":{"name":"-getObjectWithId:","abstract":"

    Returns a PFObject with the given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:error:":{"name":"-getObjectWithId:error:","abstract":"

    Returns a PFObject with the given id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:":{"name":"+getUserObjectWithId:","abstract":"

    Returns a PFUser with a given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:error:":{"name":"+getUserObjectWithId:error:","abstract":"

    Returns a PFUser with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects":{"name":"-findObjects","abstract":"

    Finds objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects:":{"name":"-findObjects:","abstract":"

    Finds objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject":{"name":"-getFirstObject","abstract":"

    Gets an object synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject:":{"name":"-getFirstObject:","abstract":"

    Gets an object synchronously based on the constructed query and sets an error if any occurred.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects":{"name":"-countObjects","abstract":"

    Counts objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects:":{"name":"-countObjects:","abstract":"

    Counts objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)push":{"name":"+push","abstract":"
    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannel:":{"name":"-setChannel:","abstract":"

    Sets the channel on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannels:":{"name":"-setChannels:","abstract":"

    Sets the array of channels on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setQuery:":{"name":"-setQuery:","abstract":"

    Sets an installation query to which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setMessage:":{"name":"-setMessage:","abstract":"

    Sets an alert message for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setData:":{"name":"-setData:","abstract":"

    Sets an arbitrary data payload for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToAndroid:":{"name":"-setPushToAndroid:","abstract":"

    Sets whether this push will go to Android devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToIOS:":{"name":"-setPushToIOS:","abstract":"

    Sets whether this push will go to iOS devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAtDate:":{"name":"-expireAtDate:","abstract":"

    Sets the expiration time for this notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAfterTimeInterval:":{"name":"-expireAfterTimeInterval:","abstract":"

    Sets the time interval after which this notification should expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)clearExpiration":{"name":"-clearExpiration","abstract":"

    Clears both expiration values, indicating that the notification should never expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(py)pushDate":{"name":"pushDate","abstract":"

    Date at which to send this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:":{"name":"+sendPushMessageToChannelInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:block:":{"name":"+sendPushMessageToChannelInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:":{"name":"+sendPushMessageToQueryInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:block:":{"name":"+sendPushMessageToQueryInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackground":{"name":"-sendPushInBackground","abstract":"

    Asynchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithBlock:":{"name":"-sendPushInBackgroundWithBlock:","abstract":"

    Asynchronously send this push message and executes the given callback block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:":{"name":"+sendPushDataToChannelInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:block:":{"name":"+sendPushDataToChannelInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:":{"name":"+sendPushDataToQueryInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:block:":{"name":"+sendPushDataToQueryInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)handlePush:":{"name":"+handlePush:","abstract":"

    A default handler for push notifications while the app is active that","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)storeDeviceToken:":{"name":"+storeDeviceToken:","abstract":"

    Store the device token locally for push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackground":{"name":"+getSubscribedChannelsInBackground","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithBlock:":{"name":"+getSubscribedChannelsInBackgroundWithBlock:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:":{"name":"+subscribeToChannelInBackground:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:block:":{"name":"+subscribeToChannelInBackground:block:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:":{"name":"+unsubscribeFromChannelInBackground:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:block:":{"name":"+unsubscribeFromChannelInBackground:block:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:target:selector:":{"name":"+sendPushMessageToChannelInBackground:withMessage:target:selector:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithTarget:selector:":{"name":"-sendPushInBackgroundWithTarget:selector:","abstract":"

    Asynchronously send this push message and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:target:selector:":{"name":"+sendPushDataToChannelInBackground:withData:target:selector:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithTarget:selector:":{"name":"+getSubscribedChannelsInBackgroundWithTarget:selector:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:target:selector:":{"name":"+subscribeToChannelInBackground:target:selector:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:target:selector:":{"name":"+unsubscribeFromChannelInBackground:target:selector:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPush:":{"name":"-sendPush:","abstract":"

    Synchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannel:withMessage:error:":{"name":"+sendPushMessageToChannel:withMessage:error:","abstract":"

    Synchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQuery:withMessage:error:":{"name":"+sendPushMessageToQuery:withMessage:error:","abstract":"

    Send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannel:withData:error:":{"name":"+sendPushDataToChannel:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQuery:withData:error:":{"name":"+sendPushDataToQuery:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannels:":{"name":"+getSubscribedChannels:","abstract":"

    Synchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannel:error:":{"name":"+subscribeToChannel:error:","abstract":"

    Synchrnously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannel:error:":{"name":"+unsubscribeFromChannel:error:","abstract":"

    Synchronously unsubscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(cm)polygonWithCoordinates:":{"name":"+polygonWithCoordinates:","abstract":"

    Creates a new PFPolygon object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(im)containsPoint:":{"name":"-containsPoint:","abstract":"

    Test if this polygon contains a point

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(py)coordinates":{"name":"coordinates","abstract":"

    Array of PFGeoPoints or CLLocations

    ","parent_name":"PFPolygon"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes a new empty PFObject instance with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:":{"name":"+objectWithClassName:","abstract":"

    Creates a new PFObject with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:dictionary:":{"name":"+objectWithClassName:dictionary:","abstract":"

    Creates a new PFObject with a class name, initialized with data","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithClassName:objectId:":{"name":"+objectWithoutDataWithClassName:objectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)objectId":{"name":"objectId","abstract":"

    The id of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)updatedAt":{"name":"updatedAt","abstract":"

    When the object was last updated.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)createdAt":{"name":"createdAt","abstract":"

    When the object was created.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)ACL":{"name":"ACL","abstract":"

    The ACL for this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)allKeys":{"name":"allKeys","abstract":"

    Returns an array of the keys contained in this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKey:":{"name":"-setObject:forKey:","abstract":"

    Sets the object associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectForKey:":{"name":"-removeObjectForKey:","abstract":"

    Unsets a key on the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKeyedSubscript:":{"name":"-setObject:forKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationForKey:":{"name":"-relationForKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationforKey:":{"name":"-relationforKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revert":{"name":"-revert","abstract":"

    Clears any changes to this object made since the last call to save and sets it back to the server state.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revertObjectForKey:":{"name":"-revertObjectForKey:","abstract":"

    Clears any changes to this object’s key that were done after last successful save and sets it back to the","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObject:forKey:":{"name":"-addObject:forKey:","abstract":"

    Adds an object to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObjectsFromArray:forKey:":{"name":"-addObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObject:forKey:":{"name":"-addUniqueObject:forKey:","abstract":"

    Adds an object to the array associated with a given key, only if it is not already present in the array.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObjectsFromArray:forKey:":{"name":"-addUniqueObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the array associated with a given key,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObject:forKey:":{"name":"-removeObject:forKey:","abstract":"

    Removes all occurrences of an object from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectsInArray:forKey:":{"name":"-removeObjectsInArray:forKey:","abstract":"

    Removes all occurrences of the objects contained in another array from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:":{"name":"-incrementKey:","abstract":"

    Increments the given key by 1.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:byAmount:":{"name":"-incrementKey:byAmount:","abstract":"

    Increments the given key by a number.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually":{"name":"-saveEventually","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually:":{"name":"-saveEventually:","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:":{"name":"+saveAllInBackground:","abstract":"

    Saves a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:block:":{"name":"+saveAllInBackground:block:","abstract":"

    Saves a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:":{"name":"+deleteAllInBackground:","abstract":"

    Deletes a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:block:":{"name":"+deleteAllInBackground:block:","abstract":"

    Deletes a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Gets whether the PFObject has been fetched.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackground":{"name":"-fetchInBackground","abstract":"

    Fetches the PFObject asynchronously and sets it as a result for the task.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithBlock:":{"name":"-fetchInBackgroundWithBlock:","abstract":"

    Fetches the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackground":{"name":"-fetchIfNeededInBackground","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithBlock:":{"name":"-fetchIfNeededInBackgroundWithBlock:","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO, then calls the callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:":{"name":"+fetchAllInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:block:":{"name":"+fetchAllInBackground:block:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:":{"name":"+fetchAllIfNeededInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:block:":{"name":"+fetchAllIfNeededInBackground:block:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackground":{"name":"-fetchFromLocalDatastoreInBackground","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackgroundWithBlock:":{"name":"-fetchFromLocalDatastoreInBackgroundWithBlock:","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackground":{"name":"-deleteInBackground","abstract":"

    Deletes the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithBlock:":{"name":"-deleteInBackgroundWithBlock:","abstract":"

    Deletes the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteEventually":{"name":"-deleteEventually","abstract":"

    Deletes this object from the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dirty":{"name":"dirty","abstract":"

    Gets whether any key-value pair in this object (or its children)","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)isDirtyForKey:":{"name":"-isDirtyForKey:","abstract":"

    Get whether a value associated with a key has been added/updated/removed and not saved yet.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackground":{"name":"-pinInBackground","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithBlock:":{"name":"-pinInBackgroundWithBlock:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:":{"name":"-pinInBackgroundWithName:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:block:":{"name":"-pinInBackgroundWithName:block:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:":{"name":"+pinAllInBackground:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:block:":{"name":"+pinAllInBackground:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:":{"name":"+pinAllInBackground:withName:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:block:":{"name":"+pinAllInBackground:withName:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackground":{"name":"-unpinInBackground","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithBlock:":{"name":"-unpinInBackgroundWithBlock:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:":{"name":"-unpinInBackgroundWithName:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:block:":{"name":"-unpinInBackgroundWithName:block:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackground":{"name":"+unpinAllObjectsInBackground","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithBlock:":{"name":"+unpinAllObjectsInBackgroundWithBlock:","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:":{"name":"+unpinAllObjectsInBackgroundWithName:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:block:":{"name":"+unpinAllObjectsInBackgroundWithName:block:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:":{"name":"+unpinAllInBackground:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:block:":{"name":"+unpinAllInBackground:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:":{"name":"+unpinAllInBackground:withName:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:block:":{"name":"+unpinAllInBackground:withName:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:target:selector:":{"name":"+saveAllInBackground:target:selector:","abstract":"

    Saves a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)refreshInBackgroundWithTarget:selector:":{"name":"-refreshInBackgroundWithTarget:selector:","abstract":"

    Asynchronously refreshes the PFObject and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithTarget:selector:":{"name":"-fetchInBackgroundWithTarget:selector:","abstract":"

    Fetches the `PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithTarget:selector:":{"name":"-fetchIfNeededInBackgroundWithTarget:selector:","abstract":"

    Fetches the PFObject’s data asynchronously if dataAvailable is NO, then calls the callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:target:selector:":{"name":"+fetchAllInBackground:target:selector:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:target:selector:":{"name":"+fetchAllIfNeededInBackground:target:selector:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithTarget:selector:":{"name":"-deleteInBackgroundWithTarget:selector:","abstract":"

    Deletes the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:target:selector:":{"name":"+deleteAllInBackground:target:selector:","abstract":"

    Deletes a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)object":{"name":"+object","abstract":"

    Creates an instance of the registered subclass with this class’s PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Registers an Objective-C class for Parse to use for representing a given Parse class.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)query":{"name":"+query","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName with a given predicate.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save":{"name":"-save","abstract":"

    Synchronously saves the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save:":{"name":"-save:","abstract":"

    Synchronously saves the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:":{"name":"+saveAll:","abstract":"

    Saves a collection of objects *synchronously all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:error:":{"name":"+saveAll:error:","abstract":"

    Saves a collection of objects synchronously all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch":{"name":"-fetch","abstract":"

    Synchronously* fetches the PFObject with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch:":{"name":"-fetch:","abstract":"

    Synchronously fetches the PFObject with the current data from the server and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded":{"name":"-fetchIfNeeded","abstract":"

    Synchronously* fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded:":{"name":"-fetchIfNeeded:","abstract":"

    Synchronously fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:":{"name":"+fetchAll:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:error:":{"name":"+fetchAll:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:":{"name":"+fetchAllIfNeeded:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:error:":{"name":"+fetchAllIfNeeded:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore":{"name":"-fetchFromLocalDatastore","abstract":"

    Synchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore:":{"name":"-fetchFromLocalDatastore:","abstract":"

    Synchronously loads data from the local datastore into this object, if it has not been fetched","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete":{"name":"-delete","abstract":"

    Synchronously deletes the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete:":{"name":"-delete:","abstract":"

    Synchronously deletes the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:":{"name":"+deleteAll:","abstract":"

    Synchronously deletes a collection of objects all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:error:":{"name":"+deleteAll:error:","abstract":"

    Synchronously deletes a collection of objects all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin":{"name":"-pin","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin:":{"name":"-pin:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:":{"name":"-pinWithName:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:error:":{"name":"-pinWithName:error:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:":{"name":"+pinAll:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:error:":{"name":"+pinAll:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:":{"name":"+pinAll:withName:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:error:":{"name":"+pinAll:withName:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin":{"name":"-unpin","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin:":{"name":"-unpin:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:":{"name":"-unpinWithName:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:error:":{"name":"-unpinWithName:error:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects":{"name":"+unpinAllObjects","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects:":{"name":"+unpinAllObjects:","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:":{"name":"+unpinAllObjectsWithName:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:error:":{"name":"+unpinAllObjectsWithName:error:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:":{"name":"+unpinAll:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:error:":{"name":"+unpinAll:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:":{"name":"+unpinAll:withName:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:error:":{"name":"+unpinAll:withName:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)currentInstallation":{"name":"+currentInstallation","abstract":"

    Gets the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)getCurrentInstallationInBackground":{"name":"+getCurrentInstallationInBackground","abstract":"

    Asynchronously loads the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceType":{"name":"deviceType","abstract":"

    The device type for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)installationId":{"name":"installationId","abstract":"

    The installationId for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceToken":{"name":"deviceToken","abstract":"

    The device token for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)badge":{"name":"badge","abstract":"

    The badge for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)timeZone":{"name":"timeZone","abstract":"

    The name of the time zone for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)channels":{"name":"channels","abstract":"

    The channels for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(im)setDeviceTokenFromData:":{"name":"-setDeviceTokenFromData:","abstract":"

    Sets the device token string property from an NSData-encoded token.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)query":{"name":"+query","abstract":"

    Creates a PFQuery for PFInstallation objects.

    ","parent_name":"PFInstallation"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPoint":{"name":"+geoPoint","abstract":"

    Create a PFGeoPoint object. Latitude and longitude are set to 0.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLocation:":{"name":"+geoPointWithLocation:","abstract":"

    Creates a new PFGeoPoint object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLatitude:longitude:":{"name":"+geoPointWithLatitude:longitude:","abstract":"

    Create a new PFGeoPoint object with the specified latitude and longitude.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointForCurrentLocationInBackground:":{"name":"+geoPointForCurrentLocationInBackground:","abstract":"

    Fetches the current device location and executes a block with a new PFGeoPoint object.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)latitude":{"name":"latitude","abstract":"

    Latitude of point in degrees. Valid range is from -90.0 to 90.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)longitude":{"name":"longitude","abstract":"

    Longitude of point in degrees. Valid range is from -180.0 to 180.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInRadiansTo:":{"name":"-distanceInRadiansTo:","abstract":"

    Get distance in radians from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInMilesTo:":{"name":"-distanceInMilesTo:","abstract":"

    Get distance in miles from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInKilometersTo:":{"name":"-distanceInKilometersTo:","abstract":"

    Get distance in kilometers from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)init":{"name":"-init","abstract":"
    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:":{"name":"+fileObjectWithData:","abstract":"

    Creates a file with given data. A name will be assigned to it by the server.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:":{"name":"+fileObjectWithName:data:","abstract":"

    Creates a file with given data and name.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:":{"name":"+fileObjectWithName:contentsAtPath:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:error:":{"name":"+fileObjectWithName:contentsAtPath:error:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:":{"name":"+fileObjectWithName:data:contentType:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:error:":{"name":"+fileObjectWithName:data:contentType:error:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:contentType:":{"name":"+fileObjectWithData:contentType:","abstract":"

    Creates a file with given data and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)name":{"name":"name","abstract":"

    The name of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)url":{"name":"url","abstract":"

    The url of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dirty":{"name":"dirty","abstract":"

    Whether the file has been uploaded for the first time.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the file asynchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithProgressBlock:":{"name":"-saveInBackgroundWithProgressBlock:","abstract":"

    Saves the file asynchronously

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:progressBlock:":{"name":"-saveInBackgroundWithBlock:progressBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Whether the data is available in memory or needs to be downloaded.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackground":{"name":"-getDataInBackground","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithProgressBlock:":{"name":"-getDataInBackgroundWithProgressBlock:","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackground":{"name":"-getDataStreamInBackground","abstract":"

    This method is like -getDataInBackground but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackground":{"name":"-getDataDownloadStreamInBackground","abstract":"

    This method is like -getDataStreamInBackground, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithProgressBlock:":{"name":"-getDataStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataInBackground but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackgroundWithProgressBlock:":{"name":"-getDataDownloadStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataStreamInBackgroundWithProgressBlock:, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:":{"name":"-getDataInBackgroundWithBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:":{"name":"-getDataStreamInBackgroundWithBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock: but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:progressBlock:":{"name":"-getDataInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:progressBlock:":{"name":"-getDataStreamInBackgroundWithBlock:progressBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock:progressBlock: but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackground":{"name":"-getFilePathInBackground","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithProgressBlock:":{"name":"-getFilePathInBackgroundWithProgressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:":{"name":"-getFilePathInBackgroundWithBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:progressBlock:":{"name":"-getFilePathInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current request (upload or download of file).

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)clearCachedDataInBackground":{"name":"-clearCachedDataInBackground","abstract":"

    Clears all cached data for this file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)clearAllCachedDataInBackground":{"name":"+clearAllCachedDataInBackground","abstract":"

    Clears all cached data for all downloaded files.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the file asynchronously and invokes the given selector on a target.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithTarget:selector:":{"name":"-getDataInBackgroundWithTarget:selector:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save":{"name":"-save","abstract":"

    Saves the file synchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save:":{"name":"-save:","abstract":"

    Saves the file synchronously and sets an error if it occurs.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData":{"name":"-getData","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData:":{"name":"-getData:","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream":{"name":"-getDataStream","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream:":{"name":"-getDataStream:","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)currentConfig":{"name":"+currentConfig","abstract":"

    Returns the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getCurrentConfigInBackground":{"name":"+getCurrentConfigInBackground","abstract":"

    Returns the task that encapsulates the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackground":{"name":"+getConfigInBackground","abstract":"

    Gets the PFConfig asynchronously and sets it as a result of a task.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackgroundWithBlock:":{"name":"+getConfigInBackgroundWithBlock:","abstract":"

    Gets the PFConfig asynchronously and executes the given callback block.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig":{"name":"+getConfig","abstract":"

    Gets the PFConfig object synchronously from the server.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig:":{"name":"+getConfig:","abstract":"

    Gets the PFConfig object synchronously from the server and sets an error if it occurs.

    ","parent_name":"PFConfig"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:":{"name":"+callFunctionInBackground:withParameters:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:block:":{"name":"+callFunctionInBackground:withParameters:block:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:target:selector:":{"name":"+callFunctionInBackground:withParameters:target:selector:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:":{"name":"+callFunction:withParameters:","abstract":"

    Calls the given cloud function synchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:error:":{"name":"+callFunction:withParameters:error:","abstract":"

    Calls the given cloud function synchronously with the parameters provided and","parent_name":"PFCloud"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInInBackground":{"name":"+logInInBackground","abstract":"

    Creates an anonymous user asynchronously and sets as a result to BFTask.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithBlock:":{"name":"+logInWithBlock:","abstract":"

    Creates an anonymous user asynchronously and performs a provided block.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)isLinkedWithUser:":{"name":"+isLinkedWithUser:","abstract":"

    Whether the PFUser object is logged in anonymously.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithTarget:selector:":{"name":"+logInWithTarget:selector:","abstract":"

    Creates an anonymous user asynchronously and invokes a selector on a target.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptions:":{"name":"+trackAppOpenedWithLaunchOptions:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptionsInBackground:block:":{"name":"+trackAppOpenedWithLaunchOptionsInBackground:block:","abstract":"

    Tracks this application being launched.","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayload:":{"name":"+trackAppOpenedWithRemoteNotificationPayload:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayloadInBackground:block:":{"name":"+trackAppOpenedWithRemoteNotificationPayloadInBackground:block:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:":{"name":"+trackEvent:","abstract":"

    Tracks the occurrence of a custom event.

    ","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:block:":{"name":"+trackEventInBackground:block:","abstract":"

    Tracks the occurrence of a custom event. Parse will store a data point at the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:dimensions:":{"name":"+trackEvent:dimensions:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:dimensions:block:":{"name":"+trackEventInBackground:dimensions:block:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACL":{"name":"+ACL","abstract":"

    Creates an ACL with no permissions granted.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACLWithUser:":{"name":"+ACLWithUser:","abstract":"

    Creates an ACL where only the provided user has access.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicReadAccess":{"name":"publicReadAccess","abstract":"

    Controls whether the public is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicWriteAccess":{"name":"publicWriteAccess","abstract":"

    Controls whether the public is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUserId:":{"name":"-setReadAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUserId:":{"name":"-getReadAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUserId:":{"name":"-setWriteAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUserId:":{"name":"-getWriteAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUser:":{"name":"-setReadAccess:forUser:","abstract":"

    Set whether the given user is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUser:":{"name":"-getReadAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUser:":{"name":"-setWriteAccess:forUser:","abstract":"

    Set whether the given user is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUser:":{"name":"-getWriteAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRoleWithName:":{"name":"-getReadAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRoleWithName:":{"name":"-setReadAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRoleWithName:":{"name":"-getWriteAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRoleWithName:":{"name":"-setWriteAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRole:":{"name":"-getReadAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRole:":{"name":"-setReadAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRole:":{"name":"-getWriteAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRole:":{"name":"-setWriteAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)setDefaultACL:withAccessForCurrentUser:":{"name":"+setDefaultACL:withAccessForCurrentUser:","abstract":"

    Sets a default ACL that will be applied to all instances of PFObject when they are created.

    ","parent_name":"PFACL"},"Classes/PFACL.html":{"name":"PFACL","abstract":"

    The PFACL class is used to control which users can access or modify a particular object."},"Classes/PFAnalytics.html":{"name":"PFAnalytics","abstract":"

    PFAnalytics provides an interface to Parse’s logging and analytics backend.

    "},"Classes/PFAnonymousUtils.html":{"name":"PFAnonymousUtils","abstract":"

    Provides utility functions for working with Anonymously logged-in users."},"Classes/PFCloud.html":{"name":"PFCloud","abstract":"

    The PFCloud class provides methods for interacting with Parse Cloud Functions.

    "},"Classes/PFConfig.html":{"name":"PFConfig","abstract":"

    PFConfig is a representation of the remote configuration object."},"Classes.html#/c:objc(cs)PFOfflineDecoder":{"name":"PFOfflineDecoder","abstract":"

    Extends the normal JSON to PFObject decoding to also deal with placeholders for new objects"},"Classes.html#/c:objc(cs)PFKnownParseObjectDecoder":{"name":"PFKnownParseObjectDecoder","abstract":"

    A subclass of PFDecoder which can keep PFObject that has been fetched instead of creating a new instance.

    "},"Classes.html#/c:objc(cs)PFEncoder":{"name":"PFEncoder","abstract":"
    "},"Classes.html#/c:objc(cs)PFNoObjectEncoder":{"name":"PFNoObjectEncoder","abstract":"

    Encoding strategy that rejects PFObject.

    "},"Classes.html#/c:objc(cs)PFPointerOrLocalIdObjectEncoder":{"name":"PFPointerOrLocalIdObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId or with localId.

    "},"Classes.html#/c:objc(cs)PFPointerObjectEncoder":{"name":"PFPointerObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId and rejects"},"Classes.html#/c:objc(cs)PFOfflineObjectEncoder":{"name":"PFOfflineObjectEncoder","abstract":"

    Encoding strategy that can encode objects that are available offline. After using this encoder,"},"Classes/PFFileObject.html":{"name":"PFFileObject","abstract":"

    PFFileObject representes a file of binary data stored on the Parse servers."},"Classes.html#/c:objc(cs)PFFile":{"name":"PFFile","abstract":"

    PFFile was renamed to PFFileObject."},"Classes.html#/c:objc(cs)PFFileUploadResult":{"name":"PFFileUploadResult","abstract":"

    Response provided by a custom PFFileUploadController.

    "},"Classes/PFGeoPoint.html":{"name":"PFGeoPoint","abstract":"

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject."},"Classes/PFInstallation.html":{"name":"PFInstallation","abstract":"

    A Parse Framework Installation Object that is a local representation of an"},"Classes/PFObject.html":{"name":"PFObject","abstract":"

    The PFObject class is a local representation of data persisted to the Parse cloud."},"Classes/PFPolygon.html":{"name":"PFPolygon","abstract":"

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject."},"Classes/PFPush.html":{"name":"PFPush","abstract":"

    The PFPush class defines a push notification that can be sent from a client device.

    "},"Classes/PFQuery.html":{"name":"PFQuery","abstract":"

    The PFQuery class defines a query that is used to query for PFObjects.

    "},"Classes/PFRelation.html":{"name":"PFRelation","abstract":"

    The PFRelation class that is used to access all of the children of a many-to-many relationship."},"Classes/PFRole.html":{"name":"PFRole","abstract":"

    The PFRole class represents a Role on the Parse server."},"Classes/PFSession.html":{"name":"PFSession","abstract":"

    PFSession is a local representation of a session."},"Classes/PFUser.html":{"name":"PFUser","abstract":"

    The PFUser class is a local representation of a user persisted to the Parse Data."},"Classes/Parse.html":{"name":"Parse","abstract":"

    The Parse class contains static functions that handle global configuration for the Parse framework.

    "},"Classes/ParseClientConfiguration.html":{"name":"ParseClientConfiguration","abstract":"

    The ParseClientConfiguration represents the local configuration of the SDK to connect to the server with.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type%20Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "}} \ No newline at end of file +{"Type%20Definitions.html#/c:PFQuery.h@T@PFQueryArrayResultBlock":{"name":"PFQueryArrayResultBlock","abstract":"
    "},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    Sets a custom file upload controller that uploads PFFiles using its own policy.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    A custom NSURLSessionConfiguration configuration that will be used from the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/PFUserAuthenticationDelegate.html#/c:objc(pl)PFUserAuthenticationDelegate(im)restoreAuthenticationWithAuthData:":{"name":"-restoreAuthenticationWithAuthData:","abstract":"

    Called when restoring third party authentication credentials that have been serialized,","parent_name":"PFUserAuthenticationDelegate"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)parseClassName":{"name":"+parseClassName","abstract":"

    The name of the class as seen in the REST API.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)query":{"name":"+query","abstract":"

    Create a query which returns objects of this type.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of this type with a given predicate.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Lets Parse know this class should be used to instantiate all objects with class type parseClassName.

    ","parent_name":"PFSubclassing"},"Protocols/PFFileUploadController.html#/c:objc(pl)PFFileUploadController(im)uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:":{"name":"-uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:","abstract":"

    Uploads a file asynchronously from file path for a given file state.

    ","parent_name":"PFFileUploadController"},"Protocols/PFFileUploadController.html":{"name":"PFFileUploadController","abstract":"

    A policy interface for overriding the default upload behavior of uploading a PFFileObject"},"Protocols/PFSubclassing.html":{"name":"PFSubclassing","abstract":"

    If a subclass of PFObject conforms to PFSubclassing and calls PFObject.+registerSubclass,"},"Protocols/PFUserAuthenticationDelegate.html":{"name":"PFUserAuthenticationDelegate","abstract":"

    Provides a general interface for delegation of third party authentication with PFUsers.

    "},"Protocols/ParseMutableClientConfiguration.html":{"name":"ParseMutableClientConfiguration","abstract":"

    The ParseMutableClientConfiguration represents a ParseClientConfiguration object that can be mutated.

    "},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInternalServer":{"name":"kPFErrorInternalServer","abstract":"

    Internal server error. No information available.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorConnectionFailed":{"name":"kPFErrorConnectionFailed","abstract":"

    The connection to the Parse servers failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectNotFound":{"name":"kPFErrorObjectNotFound","abstract":"

    Object doesn’t exist, or has an incorrect password.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidQuery":{"name":"kPFErrorInvalidQuery","abstract":"

    You tried to find values matching a datatype that doesn’t","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidClassName":{"name":"kPFErrorInvalidClassName","abstract":"

    Missing or invalid classname. Classnames are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorMissingObjectId":{"name":"kPFErrorMissingObjectId","abstract":"

    Missing object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidKeyName":{"name":"kPFErrorInvalidKeyName","abstract":"

    Invalid key name. Keys are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPointer":{"name":"kPFErrorInvalidPointer","abstract":"

    Malformed pointer. Pointers must be arrays of a classname and an object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidJSON":{"name":"kPFErrorInvalidJSON","abstract":"

    Malformed json object. A json dictionary is expected.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCommandUnavailable":{"name":"kPFErrorCommandUnavailable","abstract":"

    Tried to access a feature only available internally.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorIncorrectType":{"name":"kPFErrorIncorrectType","abstract":"

    Field set to incorrect type.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidChannelName":{"name":"kPFErrorInvalidChannelName","abstract":"

    Invalid channel name. A channel name is either an empty string (the broadcast channel)","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidDeviceToken":{"name":"kPFErrorInvalidDeviceToken","abstract":"

    Invalid device token.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPushMisconfigured":{"name":"kPFErrorPushMisconfigured","abstract":"

    Push is misconfigured. See details to find out how.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectTooLarge":{"name":"kPFErrorObjectTooLarge","abstract":"

    The object is too large.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorOperationForbidden":{"name":"kPFErrorOperationForbidden","abstract":"

    That operation isn’t allowed for clients.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCacheMiss":{"name":"kPFErrorCacheMiss","abstract":"

    The results were not found in the cache.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidNestedKey":{"name":"kPFErrorInvalidNestedKey","abstract":"

    Keys in NSDictionary values may not include $ or ..

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidFileName":{"name":"kPFErrorInvalidFileName","abstract":"

    Invalid file name.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidACL":{"name":"kPFErrorInvalidACL","abstract":"

    Invalid ACL. An ACL with an invalid format was saved. This should not happen if you use PFACL.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorTimeout":{"name":"kPFErrorTimeout","abstract":"

    The request timed out on the server. Typically this indicates the request is too expensive.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEmailAddress":{"name":"kPFErrorInvalidEmailAddress","abstract":"

    The email address was invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorDuplicateValue":{"name":"kPFErrorDuplicateValue","abstract":"

    A unique field was given a value that is already taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidRoleName":{"name":"kPFErrorInvalidRoleName","abstract":"

    Role’s name is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorExceededQuota":{"name":"kPFErrorExceededQuota","abstract":"

    Exceeded an application quota. Upgrade to resolve.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFScriptError":{"name":"kPFScriptError","abstract":"

    Cloud Code script had an error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFValidationError":{"name":"kPFValidationError","abstract":"

    Cloud Code validation failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorReceiptMissing":{"name":"kPFErrorReceiptMissing","abstract":"

    Product purchase receipt is missing.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPurchaseReceipt":{"name":"kPFErrorInvalidPurchaseReceipt","abstract":"

    Product purchase receipt is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPaymentDisabled":{"name":"kPFErrorPaymentDisabled","abstract":"

    Payment is disabled on this device.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidProductIdentifier":{"name":"kPFErrorInvalidProductIdentifier","abstract":"

    The product identifier is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductNotFoundInAppStore":{"name":"kPFErrorProductNotFoundInAppStore","abstract":"

    The product is not found in the App Store.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidServerResponse":{"name":"kPFErrorInvalidServerResponse","abstract":"

    The Apple server response is not valid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductDownloadFileSystemFailure":{"name":"kPFErrorProductDownloadFileSystemFailure","abstract":"

    Product fails to download due to file system error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidImageData":{"name":"kPFErrorInvalidImageData","abstract":"

    Fail to convert data to image.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUnsavedFile":{"name":"kPFErrorUnsavedFile","abstract":"

    Unsaved file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFileDeleteFailure":{"name":"kPFErrorFileDeleteFailure","abstract":"

    Fail to delete file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorRequestLimitExceeded":{"name":"kPFErrorRequestLimitExceeded","abstract":"

    Application has exceeded its request limit.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEventName":{"name":"kPFErrorInvalidEventName","abstract":"

    Invalid event name.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameMissing":{"name":"kPFErrorUsernameMissing","abstract":"

    Username is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserPasswordMissing":{"name":"kPFErrorUserPasswordMissing","abstract":"

    Password is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameTaken":{"name":"kPFErrorUsernameTaken","abstract":"

    Username has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailTaken":{"name":"kPFErrorUserEmailTaken","abstract":"

    Email has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailMissing":{"name":"kPFErrorUserEmailMissing","abstract":"

    The email is missing, and must be specified.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserWithEmailNotFound":{"name":"kPFErrorUserWithEmailNotFound","abstract":"

    A user with the specified email was not found.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCannotBeAlteredWithoutSession":{"name":"kPFErrorUserCannotBeAlteredWithoutSession","abstract":"

    The user cannot be altered by a client without the session.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCanOnlyBeCreatedThroughSignUp":{"name":"kPFErrorUserCanOnlyBeCreatedThroughSignUp","abstract":"

    Users can only be created through sign up.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorAccountAlreadyLinked":{"name":"kPFErrorAccountAlreadyLinked","abstract":"

    An existing account already linked to another user.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidSessionToken":{"name":"kPFErrorInvalidSessionToken","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserIdMismatch":{"name":"kPFErrorUserIdMismatch","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorLinkedIdMissing":{"name":"kPFErrorLinkedIdMissing","abstract":"

    Linked id missing from request.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidLinkedSession":{"name":"kPFErrorInvalidLinkedSession","abstract":"

    Invalid linked session.

    ","parent_name":"PFErrorCode"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelNone":{"name":"PFLogLevelNone","abstract":"

    Log level that disables all logging.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelError":{"name":"PFLogLevelError","abstract":"

    Log level that if set is going to output error messages to the log.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelWarning":{"name":"PFLogLevelWarning","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelInfo":{"name":"PFLogLevelInfo","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelDebug":{"name":"PFLogLevelDebug","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyIgnoreCache":{"name":"kPFCachePolicyIgnoreCache","abstract":"

    The query does not load from the cache or save results to the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheOnly":{"name":"kPFCachePolicyCacheOnly","abstract":"

    The query only loads from the cache, ignoring the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkOnly":{"name":"kPFCachePolicyNetworkOnly","abstract":"

    The query does not load from the cache, but it will save results to the cache.

    ","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheElseNetwork":{"name":"kPFCachePolicyCacheElseNetwork","abstract":"

    The query first tries to load from the cache, but if that fails, it loads results from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkElseCache":{"name":"kPFCachePolicyNetworkElseCache","abstract":"

    The query first tries to load from the network, but if that fails, it loads results from the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheThenNetwork":{"name":"kPFCachePolicyCacheThenNetwork","abstract":"

    The query first loads from the cache, then loads from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html":{"name":"PFCachePolicy","abstract":"

    PFCachePolicy specifies different caching policies that could be used with PFQuery.

    "},"Enums/PFLogLevel.html":{"name":"PFLogLevel","abstract":"

    PFLogLevel enum specifies different levels of logging that could be used to limit or display more messages in logs.

    "},"Enums/PFErrorCode.html":{"name":"PFErrorCode","abstract":"

    PFErrorCode enum contains all custom error codes that are used as code for NSError for callbacks on all classes.

    "},"Constants.html#/c:@kPFDeviceType":{"name":"kPFDeviceType","abstract":"
    "},"Constants.html#/c:@PFParseErrorDomain":{"name":"PFParseErrorDomain","abstract":"

    Error domain used for all NSErrors in the SDK.

    "},"Constants.html#/c:@PFNetworkWillSendURLRequestNotification":{"name":"PFNetworkWillSendURLRequestNotification","abstract":"

    The name of the notification that is going to be sent before any URL request is sent.

    "},"Constants.html#/c:@PFNetworkDidReceiveURLResponseNotification":{"name":"PFNetworkDidReceiveURLResponseNotification","abstract":"

    The name of the notification that is going to be sent after any URL response is received.

    "},"Constants.html#/c:@PFInvalidSessionTokenNotification":{"name":"PFInvalidSessionTokenNotification","abstract":"

    The name of the notification that is going to be sent when any request is failing with an invalid session token.

    "},"Constants.html#/c:@PFNetworkNotificationURLRequestUserInfoKey":{"name":"PFNetworkNotificationURLRequestUserInfoKey","abstract":"

    The key of request(NSURLRequest) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseUserInfoKey":{"name":"PFNetworkNotificationURLResponseUserInfoKey","abstract":"

    The key of response(NSHTTPURLResponse) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseBodyUserInfoKey":{"name":"PFNetworkNotificationURLResponseBodyUserInfoKey","abstract":"

    The key of repsonse body (usually NSString with JSON) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFObjectDefaultPin":{"name":"PFObjectDefaultPin","abstract":"

    The name of the default pin that for PFObject local data store.

    "},"Constants.html#/c:@PFParseInitializeDidCompleteNotification":{"name":"PFParseInitializeDidCompleteNotification","abstract":"

    For testing purposes. Allows testers to know when init is complete.

    "},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    The custom upload controller that synchronously uploads PFFiles using its own policy.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    The NSURLSessionConfiguration configuration used by the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(cm)configurationWithBlock:":{"name":"+configurationWithBlock:","abstract":"

    Create a new SDK configuration object. This will create a temporarily modifiable configuration, and pass it to a block","parent_name":"ParseClientConfiguration"},"Classes/Parse.html#/c:objc(cs)Parse(cm)setApplicationId:clientKey:":{"name":"+setApplicationId:clientKey:","abstract":"

    Sets the applicationId and clientKey of your application.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)initializeWithConfiguration:":{"name":"+initializeWithConfiguration:","abstract":"

    Sets the configuration to be used for the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)currentConfiguration":{"name":"currentConfiguration","abstract":"

    Gets the current configuration in use by the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)applicationId":{"name":"applicationId","abstract":"

    The current application id that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)clientKey":{"name":"clientKey","abstract":"

    The current client key that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)server":{"name":"server","abstract":"

    The current server URL to connect to Parse Server.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableLocalDatastore":{"name":"+enableLocalDatastore","abstract":"

    Enable pinning in your application. This must be called before your application can use","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)isLocalDatastoreEnabled":{"name":"isLocalDatastoreEnabled","abstract":"

    Flag that indicates whether Local Datastore is enabled.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:containingApplication:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:containingApplication:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)applicationGroupIdentifierForDataSharing":{"name":"+applicationGroupIdentifierForDataSharing","abstract":"

    Application Group Identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)containingApplicationBundleIdentifierForDataSharing":{"name":"+containingApplicationBundleIdentifierForDataSharing","abstract":"

    Containing application bundle identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)logLevel":{"name":"logLevel","abstract":"

    Gets or sets the level of logging to display.

    ","parent_name":"Parse"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)currentUser":{"name":"+currentUser","abstract":"

    Gets the currently logged in user from disk and returns an instance of it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)getCurrentUserInBackground":{"name":"+getCurrentUserInBackground","abstract":"

    Asynchronously loads the currently logged in user from disk and returns a task that encapsulates it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)isNew":{"name":"isNew","abstract":"

    Whether the PFUser was just created from a request.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)authenticated":{"name":"authenticated","abstract":"

    Whether the user is an authenticated object for the device.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)user":{"name":"+user","abstract":"

    Creates a new PFUser object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableAutomaticUser":{"name":"+enableAutomaticUser","abstract":"

    Enables automatic creation of anonymous users.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)username":{"name":"username","abstract":"

    The username for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)password":{"name":"password","abstract":"

    !","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)email":{"name":"email","abstract":"

    The email for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackground":{"name":"-signUpInBackground","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithBlock:":{"name":"-signUpInBackgroundWithBlock:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:":{"name":"+logInWithUsernameInBackground:password:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:block:":{"name":"+logInWithUsernameInBackground:password:block:","abstract":"

    Makes an asynchronous request to log in a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:":{"name":"+becomeInBackground:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:block:":{"name":"+becomeInBackground:block:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackground":{"name":"+enableRevocableSessionInBackground","abstract":"

    Enables revocable sessions and migrates the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackgroundWithBlock:":{"name":"+enableRevocableSessionInBackgroundWithBlock:","abstract":"

    Enables revocable sessions and upgrades the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackground":{"name":"+logOutInBackground","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackgroundWithBlock:":{"name":"+logOutInBackgroundWithBlock:","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:":{"name":"+requestPasswordResetForEmailInBackground:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:block:":{"name":"+requestPasswordResetForEmailInBackground:block:","abstract":"

    Send a password reset request asynchronously for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)registerAuthenticationDelegate:forAuthType:":{"name":"+registerAuthenticationDelegate:forAuthType:","abstract":"

    Registers a third party authentication delegate. If a delegate is already registered for the authType then","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)unregisterAuthenticationDelegateForAuthType:":{"name":"+unregisterAuthenticationDelegateForAuthType:","abstract":"

    Unregisters a third party authentication delegate. If no delegate is registered, this fails gracefully.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithAuthTypeInBackground:authData:":{"name":"+logInWithAuthTypeInBackground:authData:","abstract":"

    Logs in a user with third party authentication credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)linkWithAuthTypeInBackground:authData:":{"name":"-linkWithAuthTypeInBackground:authData:","abstract":"

    Links this user to a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)unlinkWithAuthTypeInBackground:":{"name":"-unlinkWithAuthTypeInBackground:","abstract":"

    Unlinks this user from a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)isLinkedWithAuthType:":{"name":"-isLinkedWithAuthType:","abstract":"

    Indicates whether this user is linked with a third party authentication library of a specific type.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithTarget:selector:":{"name":"-signUpInBackgroundWithTarget:selector:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:target:selector:":{"name":"+logInWithUsernameInBackground:password:target:selector:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:target:selector:":{"name":"+becomeInBackground:target:selector:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:target:selector:":{"name":"+requestPasswordResetForEmailInBackground:target:selector:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp":{"name":"-signUp","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp:":{"name":"-signUp:","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:":{"name":"+logInWithUsername:password:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:error:":{"name":"+logInWithUsername:password:error:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:":{"name":"+become:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:error:":{"name":"+become:error:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOut":{"name":"+logOut","abstract":"

    Synchronously* logs out the currently logged in user on disk.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:":{"name":"+requestPasswordResetForEmail:","abstract":"

    Synchronously Send a password reset request for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:error:":{"name":"+requestPasswordResetForEmail:error:","abstract":"

    Synchronously send a password reset request for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFSession.html#/c:objc(cs)PFSession(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token string for this session.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackground":{"name":"+getCurrentSessionInBackground","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackgroundWithBlock:":{"name":"+getCurrentSessionInBackgroundWithBlock:","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:":{"name":"-initWithName:","abstract":"

    Constructs a new PFRole with the given name.","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:acl:":{"name":"-initWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:":{"name":"+roleWithName:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:acl:":{"name":"+roleWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)name":{"name":"name","abstract":"

    Gets or sets the name for a role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)users":{"name":"users","abstract":"

    Gets the PFRelation for the PFUser objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)roles":{"name":"roles","abstract":"

    Gets the PFRelation for the PFRole objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(py)targetClass":{"name":"targetClass","abstract":"

    The name of the class of the target child objects.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)query":{"name":"-query","abstract":"

    Returns a PFQuery object that can be used to get objects in this relation.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)addObject:":{"name":"-addObject:","abstract":"

    Adds a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)removeObject:":{"name":"-removeObject:","abstract":"

    Removes a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes the query with a class name.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:":{"name":"+queryWithClassName:","abstract":"

    Returns a PFQuery for a given class.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:predicate:":{"name":"+queryWithClassName:predicate:","abstract":"

    Creates a PFQuery with the constraints given by predicate.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name to query for.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKey:":{"name":"-includeKey:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKeys:":{"name":"-includeKeys:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeAll":{"name":"-includeAll","abstract":"

    Make the query include all PFObjects that have a reference.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKey:":{"name":"-excludeKey:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKeys:":{"name":"-excludeKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)selectKeys:":{"name":"-selectKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to include only the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyExists:":{"name":"-whereKeyExists:","abstract":"

    Add a constraint that requires a particular key exists.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyDoesNotExist:":{"name":"-whereKeyDoesNotExist:","abstract":"

    Add a constraint that requires a key not exist.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:equalTo:":{"name":"-whereKey:equalTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be equal to the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThan:":{"name":"-whereKey:lessThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be less than the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThanOrEqualTo:":{"name":"-whereKey:lessThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThan:":{"name":"-whereKey:greaterThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThanOrEqualTo:":{"name":"-whereKey:greaterThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notEqualTo:":{"name":"-whereKey:notEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesText:":{"name":"-whereKey:matchesText:","abstract":"

    Add a constraint for finding string values that contain a provided","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedIn:":{"name":"-whereKey:containedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notContainedIn:":{"name":"-whereKey:notContainedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsAllObjectsInArray:":{"name":"-whereKey:containsAllObjectsInArray:","abstract":"

    Add a constraint to the query that requires a particular key’s array","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedBy:":{"name":"-whereKey:containedBy:","abstract":"

    Adds a constraint to the query that requires a particular key’s value to","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:":{"name":"-whereKey:nearGeoPoint:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinMiles:":{"name":"-whereKey:nearGeoPoint:withinMiles:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinKilometers:":{"name":"-whereKey:nearGeoPoint:withinKilometers:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinRadians:":{"name":"-whereKey:nearGeoPoint:withinRadians:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be near","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinGeoBoxFromSouthwest:toNortheast:":{"name":"-whereKey:withinGeoBoxFromSouthwest:toNortheast:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinPolygon:":{"name":"-whereKey:withinPolygon:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:polygonContains:":{"name":"-whereKey:polygonContains:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:":{"name":"-whereKey:matchesRegex:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:modifiers:":{"name":"-whereKey:matchesRegex:modifiers:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsString:":{"name":"-whereKey:containsString:","abstract":"

    Add a constraint for finding string values that contain a provided substring.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasPrefix:":{"name":"-whereKey:hasPrefix:","abstract":"

    Add a constraint for finding string values that start with a provided prefix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasSuffix:":{"name":"-whereKey:hasSuffix:","abstract":"

    Add a constraint for finding string values that end with a provided suffix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)orQueryWithSubqueries:":{"name":"+orQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the or of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)andQueryWithSubqueries:":{"name":"+andQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the and of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesKey:inQuery:":{"name":"-whereKey:matchesKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value matches a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchKey:inQuery:":{"name":"-whereKey:doesNotMatchKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value NOT match a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesQuery:":{"name":"-whereKey:matchesQuery:","abstract":"

    Add a constraint that requires that a key’s value matches a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchQuery:":{"name":"-whereKey:doesNotMatchQuery:","abstract":"

    Add a constraint that requires that a key’s value to not match a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByAscending:":{"name":"-orderByAscending:","abstract":"

    Sort the results in ascending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addAscendingOrder:":{"name":"-addAscendingOrder:","abstract":"

    Additionally sort in ascending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByDescending:":{"name":"-orderByDescending:","abstract":"

    Sort the results in descending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addDescendingOrder:":{"name":"-addDescendingOrder:","abstract":"

    Additionally sort in descending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptor:":{"name":"-orderBySortDescriptor:","abstract":"

    Sort the results using a given sort descriptor.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptors:":{"name":"-orderBySortDescriptors:","abstract":"

    Sort the results using a given array of sort descriptors.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:":{"name":"-getObjectInBackgroundWithId:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:block:":{"name":"-getObjectInBackgroundWithId:block:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryForUser":{"name":"+queryForUser","abstract":"

    @deprecated Please use [PFUser query] instead.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackground":{"name":"-findObjectsInBackground","abstract":"

    Finds objects asynchronously and sets the NSArray of PFObject objects as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithBlock:":{"name":"-findObjectsInBackgroundWithBlock:","abstract":"

    Finds objects asynchronously and calls the given block with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackground":{"name":"-getFirstObjectInBackground","abstract":"

    Gets an object asynchronously and sets it as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithBlock:":{"name":"-getFirstObjectInBackgroundWithBlock:","abstract":"

    Gets an object asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackground":{"name":"-countObjectsInBackground","abstract":"

    Counts objects asynchronously and sets NSNumber with count as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithBlock:":{"name":"-countObjectsInBackgroundWithBlock:","abstract":"

    Counts objects asynchronously and calls the given block with the counts.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current network request (if any). Ensures that callbacks won’t be called.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)limit":{"name":"limit","abstract":"

    A limit on the number of objects to return. The default limit is 100, with a","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)skip":{"name":"skip","abstract":"

    The number of objects to skip before returning any.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)cachePolicy":{"name":"cachePolicy","abstract":"

    The cache policy to use for requests.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)maxCacheAge":{"name":"maxCacheAge","abstract":"

    The age after which a cached value will be ignored

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)hasCachedResult":{"name":"hasCachedResult","abstract":"

    Returns whether there is a cached result for this query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)clearCachedResult":{"name":"-clearCachedResult","abstract":"

    Clears the cached result for this query. If there is no cached result, this is a noop.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)clearAllCachedResults":{"name":"+clearAllCachedResults","abstract":"

    Clears the cached results for all queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromLocalDatastore":{"name":"-fromLocalDatastore","abstract":"

    Change the source of this query to all pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPin":{"name":"-fromPin","abstract":"

    Change the source of this query to the default group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPinWithName:":{"name":"-fromPinWithName:","abstract":"

    Change the source of this query to a specific group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)ignoreACLs":{"name":"-ignoreACLs","abstract":"

    Ignore ACLs when querying from the Local Datastore.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)trace":{"name":"trace","abstract":"

    Whether or not performance tracing should be done on the query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:target:selector:":{"name":"-getObjectInBackgroundWithId:target:selector:","abstract":"

    Gets a PFObject asynchronously.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithTarget:selector:":{"name":"-findObjectsInBackgroundWithTarget:selector:","abstract":"

    Finds objects asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithTarget:selector:":{"name":"-getFirstObjectInBackgroundWithTarget:selector:","abstract":"

    Gets an object asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithTarget:selector:":{"name":"-countObjectsInBackgroundWithTarget:selector:","abstract":"

    Counts objects asynchronously and calls the given callback with the count.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:":{"name":"+getObjectOfClass:objectId:","abstract":"

    Returns a PFObject with a given class and id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:error:":{"name":"+getObjectOfClass:objectId:error:","abstract":"

    Returns a PFObject with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:":{"name":"-getObjectWithId:","abstract":"

    Returns a PFObject with the given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:error:":{"name":"-getObjectWithId:error:","abstract":"

    Returns a PFObject with the given id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:":{"name":"+getUserObjectWithId:","abstract":"

    Returns a PFUser with a given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:error:":{"name":"+getUserObjectWithId:error:","abstract":"

    Returns a PFUser with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects":{"name":"-findObjects","abstract":"

    Finds objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects:":{"name":"-findObjects:","abstract":"

    Finds objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject":{"name":"-getFirstObject","abstract":"

    Gets an object synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject:":{"name":"-getFirstObject:","abstract":"

    Gets an object synchronously based on the constructed query and sets an error if any occurred.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects":{"name":"-countObjects","abstract":"

    Counts objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects:":{"name":"-countObjects:","abstract":"

    Counts objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)push":{"name":"+push","abstract":"
    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannel:":{"name":"-setChannel:","abstract":"

    Sets the channel on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannels:":{"name":"-setChannels:","abstract":"

    Sets the array of channels on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setQuery:":{"name":"-setQuery:","abstract":"

    Sets an installation query to which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setMessage:":{"name":"-setMessage:","abstract":"

    Sets an alert message for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setData:":{"name":"-setData:","abstract":"

    Sets an arbitrary data payload for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToAndroid:":{"name":"-setPushToAndroid:","abstract":"

    Sets whether this push will go to Android devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToIOS:":{"name":"-setPushToIOS:","abstract":"

    Sets whether this push will go to iOS devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAtDate:":{"name":"-expireAtDate:","abstract":"

    Sets the expiration time for this notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAfterTimeInterval:":{"name":"-expireAfterTimeInterval:","abstract":"

    Sets the time interval after which this notification should expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)clearExpiration":{"name":"-clearExpiration","abstract":"

    Clears both expiration values, indicating that the notification should never expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(py)pushDate":{"name":"pushDate","abstract":"

    Date at which to send this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:":{"name":"+sendPushMessageToChannelInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:block:":{"name":"+sendPushMessageToChannelInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:":{"name":"+sendPushMessageToQueryInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:block:":{"name":"+sendPushMessageToQueryInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackground":{"name":"-sendPushInBackground","abstract":"

    Asynchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithBlock:":{"name":"-sendPushInBackgroundWithBlock:","abstract":"

    Asynchronously send this push message and executes the given callback block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:":{"name":"+sendPushDataToChannelInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:block:":{"name":"+sendPushDataToChannelInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:":{"name":"+sendPushDataToQueryInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:block:":{"name":"+sendPushDataToQueryInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)handlePush:":{"name":"+handlePush:","abstract":"

    A default handler for push notifications while the app is active that","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)storeDeviceToken:":{"name":"+storeDeviceToken:","abstract":"

    Store the device token locally for push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackground":{"name":"+getSubscribedChannelsInBackground","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithBlock:":{"name":"+getSubscribedChannelsInBackgroundWithBlock:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:":{"name":"+subscribeToChannelInBackground:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:block:":{"name":"+subscribeToChannelInBackground:block:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:":{"name":"+unsubscribeFromChannelInBackground:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:block:":{"name":"+unsubscribeFromChannelInBackground:block:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:target:selector:":{"name":"+sendPushMessageToChannelInBackground:withMessage:target:selector:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithTarget:selector:":{"name":"-sendPushInBackgroundWithTarget:selector:","abstract":"

    Asynchronously send this push message and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:target:selector:":{"name":"+sendPushDataToChannelInBackground:withData:target:selector:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithTarget:selector:":{"name":"+getSubscribedChannelsInBackgroundWithTarget:selector:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:target:selector:":{"name":"+subscribeToChannelInBackground:target:selector:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:target:selector:":{"name":"+unsubscribeFromChannelInBackground:target:selector:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPush:":{"name":"-sendPush:","abstract":"

    Synchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannel:withMessage:error:":{"name":"+sendPushMessageToChannel:withMessage:error:","abstract":"

    Synchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQuery:withMessage:error:":{"name":"+sendPushMessageToQuery:withMessage:error:","abstract":"

    Send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannel:withData:error:":{"name":"+sendPushDataToChannel:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQuery:withData:error:":{"name":"+sendPushDataToQuery:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannels:":{"name":"+getSubscribedChannels:","abstract":"

    Synchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannel:error:":{"name":"+subscribeToChannel:error:","abstract":"

    Synchrnously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannel:error:":{"name":"+unsubscribeFromChannel:error:","abstract":"

    Synchronously unsubscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(cm)polygonWithCoordinates:":{"name":"+polygonWithCoordinates:","abstract":"

    Creates a new PFPolygon object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(im)containsPoint:":{"name":"-containsPoint:","abstract":"

    Test if this polygon contains a point

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(py)coordinates":{"name":"coordinates","abstract":"

    Array of PFGeoPoints or CLLocations

    ","parent_name":"PFPolygon"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes a new empty PFObject instance with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:":{"name":"+objectWithClassName:","abstract":"

    Creates a new PFObject with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:dictionary:":{"name":"+objectWithClassName:dictionary:","abstract":"

    Creates a new PFObject with a class name, initialized with data","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithClassName:objectId:":{"name":"+objectWithoutDataWithClassName:objectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)objectId":{"name":"objectId","abstract":"

    The id of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)updatedAt":{"name":"updatedAt","abstract":"

    When the object was last updated.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)createdAt":{"name":"createdAt","abstract":"

    When the object was created.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)ACL":{"name":"ACL","abstract":"

    The ACL for this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)allKeys":{"name":"allKeys","abstract":"

    Returns an array of the keys contained in this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKey:":{"name":"-setObject:forKey:","abstract":"

    Sets the object associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectForKey:":{"name":"-removeObjectForKey:","abstract":"

    Unsets a key on the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKeyedSubscript:":{"name":"-setObject:forKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationForKey:":{"name":"-relationForKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationforKey:":{"name":"-relationforKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revert":{"name":"-revert","abstract":"

    Clears any changes to this object made since the last call to save and sets it back to the server state.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revertObjectForKey:":{"name":"-revertObjectForKey:","abstract":"

    Clears any changes to this object’s key that were done after last successful save and sets it back to the","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObject:forKey:":{"name":"-addObject:forKey:","abstract":"

    Adds an object to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObjectsFromArray:forKey:":{"name":"-addObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObject:forKey:":{"name":"-addUniqueObject:forKey:","abstract":"

    Adds an object to the array associated with a given key, only if it is not already present in the array.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObjectsFromArray:forKey:":{"name":"-addUniqueObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the array associated with a given key,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObject:forKey:":{"name":"-removeObject:forKey:","abstract":"

    Removes all occurrences of an object from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectsInArray:forKey:":{"name":"-removeObjectsInArray:forKey:","abstract":"

    Removes all occurrences of the objects contained in another array from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:":{"name":"-incrementKey:","abstract":"

    Increments the given key by 1.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:byAmount:":{"name":"-incrementKey:byAmount:","abstract":"

    Increments the given key by a number.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually":{"name":"-saveEventually","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually:":{"name":"-saveEventually:","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:":{"name":"+saveAllInBackground:","abstract":"

    Saves a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:block:":{"name":"+saveAllInBackground:block:","abstract":"

    Saves a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:":{"name":"+deleteAllInBackground:","abstract":"

    Deletes a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:block:":{"name":"+deleteAllInBackground:block:","abstract":"

    Deletes a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Gets whether the PFObject has been fetched.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)isDataAvailableForKey:":{"name":"-isDataAvailableForKey:","abstract":"

    Checks whether the PFObject has data for given key

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackground":{"name":"-fetchInBackground","abstract":"

    Fetches the PFObject asynchronously and sets it as a result for the task.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithBlock:":{"name":"-fetchInBackgroundWithBlock:","abstract":"

    Fetches the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackground":{"name":"-fetchIfNeededInBackground","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithBlock:":{"name":"-fetchIfNeededInBackgroundWithBlock:","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO, then calls the callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:":{"name":"+fetchAllInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:block:":{"name":"+fetchAllInBackground:block:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:":{"name":"+fetchAllIfNeededInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:block:":{"name":"+fetchAllIfNeededInBackground:block:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackground":{"name":"-fetchFromLocalDatastoreInBackground","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackgroundWithBlock:":{"name":"-fetchFromLocalDatastoreInBackgroundWithBlock:","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackground":{"name":"-deleteInBackground","abstract":"

    Deletes the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithBlock:":{"name":"-deleteInBackgroundWithBlock:","abstract":"

    Deletes the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteEventually":{"name":"-deleteEventually","abstract":"

    Deletes this object from the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dirty":{"name":"dirty","abstract":"

    Gets whether any key-value pair in this object (or its children)","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)isDirtyForKey:":{"name":"-isDirtyForKey:","abstract":"

    Get whether a value associated with a key has been added/updated/removed and not saved yet.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackground":{"name":"-pinInBackground","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithBlock:":{"name":"-pinInBackgroundWithBlock:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:":{"name":"-pinInBackgroundWithName:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:block:":{"name":"-pinInBackgroundWithName:block:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:":{"name":"+pinAllInBackground:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:block:":{"name":"+pinAllInBackground:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:":{"name":"+pinAllInBackground:withName:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:block:":{"name":"+pinAllInBackground:withName:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackground":{"name":"-unpinInBackground","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithBlock:":{"name":"-unpinInBackgroundWithBlock:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:":{"name":"-unpinInBackgroundWithName:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:block:":{"name":"-unpinInBackgroundWithName:block:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackground":{"name":"+unpinAllObjectsInBackground","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithBlock:":{"name":"+unpinAllObjectsInBackgroundWithBlock:","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:":{"name":"+unpinAllObjectsInBackgroundWithName:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:block:":{"name":"+unpinAllObjectsInBackgroundWithName:block:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:":{"name":"+unpinAllInBackground:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:block:":{"name":"+unpinAllInBackground:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:":{"name":"+unpinAllInBackground:withName:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:block:":{"name":"+unpinAllInBackground:withName:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:target:selector:":{"name":"+saveAllInBackground:target:selector:","abstract":"

    Saves a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)refreshInBackgroundWithTarget:selector:":{"name":"-refreshInBackgroundWithTarget:selector:","abstract":"

    Asynchronously refreshes the PFObject and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithTarget:selector:":{"name":"-fetchInBackgroundWithTarget:selector:","abstract":"

    Fetches the `PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithTarget:selector:":{"name":"-fetchIfNeededInBackgroundWithTarget:selector:","abstract":"

    Fetches the PFObject’s data asynchronously if dataAvailable is NO, then calls the callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:target:selector:":{"name":"+fetchAllInBackground:target:selector:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:target:selector:":{"name":"+fetchAllIfNeededInBackground:target:selector:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithTarget:selector:":{"name":"-deleteInBackgroundWithTarget:selector:","abstract":"

    Deletes the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:target:selector:":{"name":"+deleteAllInBackground:target:selector:","abstract":"

    Deletes a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)object":{"name":"+object","abstract":"

    Creates an instance of the registered subclass with this class’s PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Registers an Objective-C class for Parse to use for representing a given Parse class.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)query":{"name":"+query","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName with a given predicate.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save":{"name":"-save","abstract":"

    Synchronously saves the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save:":{"name":"-save:","abstract":"

    Synchronously saves the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:":{"name":"+saveAll:","abstract":"

    Saves a collection of objects *synchronously all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:error:":{"name":"+saveAll:error:","abstract":"

    Saves a collection of objects synchronously all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch":{"name":"-fetch","abstract":"

    Synchronously* fetches the PFObject with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch:":{"name":"-fetch:","abstract":"

    Synchronously fetches the PFObject with the current data from the server and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded":{"name":"-fetchIfNeeded","abstract":"

    Synchronously* fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded:":{"name":"-fetchIfNeeded:","abstract":"

    Synchronously fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:":{"name":"+fetchAll:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:error:":{"name":"+fetchAll:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:":{"name":"+fetchAllIfNeeded:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:error:":{"name":"+fetchAllIfNeeded:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore":{"name":"-fetchFromLocalDatastore","abstract":"

    Synchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore:":{"name":"-fetchFromLocalDatastore:","abstract":"

    Synchronously loads data from the local datastore into this object, if it has not been fetched","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete":{"name":"-delete","abstract":"

    Synchronously deletes the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete:":{"name":"-delete:","abstract":"

    Synchronously deletes the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:":{"name":"+deleteAll:","abstract":"

    Synchronously deletes a collection of objects all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:error:":{"name":"+deleteAll:error:","abstract":"

    Synchronously deletes a collection of objects all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin":{"name":"-pin","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin:":{"name":"-pin:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:":{"name":"-pinWithName:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:error:":{"name":"-pinWithName:error:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:":{"name":"+pinAll:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:error:":{"name":"+pinAll:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:":{"name":"+pinAll:withName:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:error:":{"name":"+pinAll:withName:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin":{"name":"-unpin","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin:":{"name":"-unpin:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:":{"name":"-unpinWithName:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:error:":{"name":"-unpinWithName:error:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects":{"name":"+unpinAllObjects","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects:":{"name":"+unpinAllObjects:","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:":{"name":"+unpinAllObjectsWithName:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:error:":{"name":"+unpinAllObjectsWithName:error:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:":{"name":"+unpinAll:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:error:":{"name":"+unpinAll:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:":{"name":"+unpinAll:withName:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:error:":{"name":"+unpinAll:withName:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)currentInstallation":{"name":"+currentInstallation","abstract":"

    Gets the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)getCurrentInstallationInBackground":{"name":"+getCurrentInstallationInBackground","abstract":"

    Asynchronously loads the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceType":{"name":"deviceType","abstract":"

    The device type for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)installationId":{"name":"installationId","abstract":"

    The installationId for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceToken":{"name":"deviceToken","abstract":"

    The device token for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)badge":{"name":"badge","abstract":"

    The badge for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)timeZone":{"name":"timeZone","abstract":"

    The name of the time zone for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)channels":{"name":"channels","abstract":"

    The channels for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(im)setDeviceTokenFromData:":{"name":"-setDeviceTokenFromData:","abstract":"

    Sets the device token string property from an NSData-encoded token.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)query":{"name":"+query","abstract":"

    Creates a PFQuery for PFInstallation objects.

    ","parent_name":"PFInstallation"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPoint":{"name":"+geoPoint","abstract":"

    Create a PFGeoPoint object. Latitude and longitude are set to 0.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLocation:":{"name":"+geoPointWithLocation:","abstract":"

    Creates a new PFGeoPoint object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLatitude:longitude:":{"name":"+geoPointWithLatitude:longitude:","abstract":"

    Create a new PFGeoPoint object with the specified latitude and longitude.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointForCurrentLocationInBackground:":{"name":"+geoPointForCurrentLocationInBackground:","abstract":"

    Fetches the current device location and executes a block with a new PFGeoPoint object.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)latitude":{"name":"latitude","abstract":"

    Latitude of point in degrees. Valid range is from -90.0 to 90.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)longitude":{"name":"longitude","abstract":"

    Longitude of point in degrees. Valid range is from -180.0 to 180.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInRadiansTo:":{"name":"-distanceInRadiansTo:","abstract":"

    Get distance in radians from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInMilesTo:":{"name":"-distanceInMilesTo:","abstract":"

    Get distance in miles from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInKilometersTo:":{"name":"-distanceInKilometersTo:","abstract":"

    Get distance in kilometers from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)init":{"name":"-init","abstract":"
    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:":{"name":"+fileObjectWithData:","abstract":"

    Creates a file with given data. A name will be assigned to it by the server.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:":{"name":"+fileObjectWithName:data:","abstract":"

    Creates a file with given data and name.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:":{"name":"+fileObjectWithName:contentsAtPath:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:error:":{"name":"+fileObjectWithName:contentsAtPath:error:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:":{"name":"+fileObjectWithName:data:contentType:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:error:":{"name":"+fileObjectWithName:data:contentType:error:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:contentType:":{"name":"+fileObjectWithData:contentType:","abstract":"

    Creates a file with given data and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)name":{"name":"name","abstract":"

    The name of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)url":{"name":"url","abstract":"

    The url of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dirty":{"name":"dirty","abstract":"

    Whether the file has been uploaded for the first time.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the file asynchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithProgressBlock:":{"name":"-saveInBackgroundWithProgressBlock:","abstract":"

    Saves the file asynchronously

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:progressBlock:":{"name":"-saveInBackgroundWithBlock:progressBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Whether the data is available in memory or needs to be downloaded.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackground":{"name":"-getDataInBackground","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithProgressBlock:":{"name":"-getDataInBackgroundWithProgressBlock:","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackground":{"name":"-getDataStreamInBackground","abstract":"

    This method is like -getDataInBackground but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackground":{"name":"-getDataDownloadStreamInBackground","abstract":"

    This method is like -getDataStreamInBackground, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithProgressBlock:":{"name":"-getDataStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataInBackground but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackgroundWithProgressBlock:":{"name":"-getDataDownloadStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataStreamInBackgroundWithProgressBlock:, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:":{"name":"-getDataInBackgroundWithBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:":{"name":"-getDataStreamInBackgroundWithBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock: but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:progressBlock:":{"name":"-getDataInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:progressBlock:":{"name":"-getDataStreamInBackgroundWithBlock:progressBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock:progressBlock: but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackground":{"name":"-getFilePathInBackground","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithProgressBlock:":{"name":"-getFilePathInBackgroundWithProgressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:":{"name":"-getFilePathInBackgroundWithBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:progressBlock:":{"name":"-getFilePathInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current request (upload or download of file).

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)clearCachedDataInBackground":{"name":"-clearCachedDataInBackground","abstract":"

    Clears all cached data for this file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)clearAllCachedDataInBackground":{"name":"+clearAllCachedDataInBackground","abstract":"

    Clears all cached data for all downloaded files.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the file asynchronously and invokes the given selector on a target.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithTarget:selector:":{"name":"-getDataInBackgroundWithTarget:selector:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save":{"name":"-save","abstract":"

    Saves the file synchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save:":{"name":"-save:","abstract":"

    Saves the file synchronously and sets an error if it occurs.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData":{"name":"-getData","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData:":{"name":"-getData:","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream":{"name":"-getDataStream","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream:":{"name":"-getDataStream:","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)currentConfig":{"name":"+currentConfig","abstract":"

    Returns the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getCurrentConfigInBackground":{"name":"+getCurrentConfigInBackground","abstract":"

    Returns the task that encapsulates the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackground":{"name":"+getConfigInBackground","abstract":"

    Gets the PFConfig asynchronously and sets it as a result of a task.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackgroundWithBlock:":{"name":"+getConfigInBackgroundWithBlock:","abstract":"

    Gets the PFConfig asynchronously and executes the given callback block.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig":{"name":"+getConfig","abstract":"

    Gets the PFConfig object synchronously from the server.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig:":{"name":"+getConfig:","abstract":"

    Gets the PFConfig object synchronously from the server and sets an error if it occurs.

    ","parent_name":"PFConfig"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:":{"name":"+callFunctionInBackground:withParameters:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:block:":{"name":"+callFunctionInBackground:withParameters:block:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:target:selector:":{"name":"+callFunctionInBackground:withParameters:target:selector:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:":{"name":"+callFunction:withParameters:","abstract":"

    Calls the given cloud function synchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:error:":{"name":"+callFunction:withParameters:error:","abstract":"

    Calls the given cloud function synchronously with the parameters provided and","parent_name":"PFCloud"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInInBackground":{"name":"+logInInBackground","abstract":"

    Creates an anonymous user asynchronously and sets as a result to BFTask.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithBlock:":{"name":"+logInWithBlock:","abstract":"

    Creates an anonymous user asynchronously and performs a provided block.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)isLinkedWithUser:":{"name":"+isLinkedWithUser:","abstract":"

    Whether the PFUser object is logged in anonymously.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithTarget:selector:":{"name":"+logInWithTarget:selector:","abstract":"

    Creates an anonymous user asynchronously and invokes a selector on a target.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptions:":{"name":"+trackAppOpenedWithLaunchOptions:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptionsInBackground:block:":{"name":"+trackAppOpenedWithLaunchOptionsInBackground:block:","abstract":"

    Tracks this application being launched.","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayload:":{"name":"+trackAppOpenedWithRemoteNotificationPayload:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayloadInBackground:block:":{"name":"+trackAppOpenedWithRemoteNotificationPayloadInBackground:block:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:":{"name":"+trackEvent:","abstract":"

    Tracks the occurrence of a custom event.

    ","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:block:":{"name":"+trackEventInBackground:block:","abstract":"

    Tracks the occurrence of a custom event. Parse will store a data point at the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:dimensions:":{"name":"+trackEvent:dimensions:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:dimensions:block:":{"name":"+trackEventInBackground:dimensions:block:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACL":{"name":"+ACL","abstract":"

    Creates an ACL with no permissions granted.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACLWithUser:":{"name":"+ACLWithUser:","abstract":"

    Creates an ACL where only the provided user has access.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicReadAccess":{"name":"publicReadAccess","abstract":"

    Controls whether the public is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicWriteAccess":{"name":"publicWriteAccess","abstract":"

    Controls whether the public is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUserId:":{"name":"-setReadAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUserId:":{"name":"-getReadAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUserId:":{"name":"-setWriteAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUserId:":{"name":"-getWriteAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUser:":{"name":"-setReadAccess:forUser:","abstract":"

    Set whether the given user is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUser:":{"name":"-getReadAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUser:":{"name":"-setWriteAccess:forUser:","abstract":"

    Set whether the given user is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUser:":{"name":"-getWriteAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRoleWithName:":{"name":"-getReadAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRoleWithName:":{"name":"-setReadAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRoleWithName:":{"name":"-getWriteAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRoleWithName:":{"name":"-setWriteAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRole:":{"name":"-getReadAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRole:":{"name":"-setReadAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRole:":{"name":"-getWriteAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRole:":{"name":"-setWriteAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)setDefaultACL:withAccessForCurrentUser:":{"name":"+setDefaultACL:withAccessForCurrentUser:","abstract":"

    Sets a default ACL that will be applied to all instances of PFObject when they are created.

    ","parent_name":"PFACL"},"Classes/PFACL.html":{"name":"PFACL","abstract":"

    The PFACL class is used to control which users can access or modify a particular object."},"Classes/PFAnalytics.html":{"name":"PFAnalytics","abstract":"

    PFAnalytics provides an interface to Parse’s logging and analytics backend.

    "},"Classes/PFAnonymousUtils.html":{"name":"PFAnonymousUtils","abstract":"

    Provides utility functions for working with Anonymously logged-in users."},"Classes/PFCloud.html":{"name":"PFCloud","abstract":"

    The PFCloud class provides methods for interacting with Parse Cloud Functions.

    "},"Classes/PFConfig.html":{"name":"PFConfig","abstract":"

    PFConfig is a representation of the remote configuration object."},"Classes.html#/c:objc(cs)PFOfflineDecoder":{"name":"PFOfflineDecoder","abstract":"

    Extends the normal JSON to PFObject decoding to also deal with placeholders for new objects"},"Classes.html#/c:objc(cs)PFKnownParseObjectDecoder":{"name":"PFKnownParseObjectDecoder","abstract":"

    A subclass of PFDecoder which can keep PFObject that has been fetched instead of creating a new instance.

    "},"Classes.html#/c:objc(cs)PFEncoder":{"name":"PFEncoder","abstract":"
    "},"Classes.html#/c:objc(cs)PFNoObjectEncoder":{"name":"PFNoObjectEncoder","abstract":"

    Encoding strategy that rejects PFObject.

    "},"Classes.html#/c:objc(cs)PFPointerOrLocalIdObjectEncoder":{"name":"PFPointerOrLocalIdObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId or with localId.

    "},"Classes.html#/c:objc(cs)PFPointerObjectEncoder":{"name":"PFPointerObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId and rejects"},"Classes.html#/c:objc(cs)PFOfflineObjectEncoder":{"name":"PFOfflineObjectEncoder","abstract":"

    Encoding strategy that can encode objects that are available offline. After using this encoder,"},"Classes/PFFileObject.html":{"name":"PFFileObject","abstract":"

    PFFileObject representes a file of binary data stored on the Parse servers."},"Classes.html#/c:objc(cs)PFFile":{"name":"PFFile","abstract":"

    PFFile was renamed to PFFileObject."},"Classes.html#/c:objc(cs)PFFileUploadResult":{"name":"PFFileUploadResult","abstract":"

    Response provided by a custom PFFileUploadController.

    "},"Classes/PFGeoPoint.html":{"name":"PFGeoPoint","abstract":"

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject."},"Classes/PFInstallation.html":{"name":"PFInstallation","abstract":"

    A Parse Framework Installation Object that is a local representation of an"},"Classes/PFObject.html":{"name":"PFObject","abstract":"

    The PFObject class is a local representation of data persisted to the Parse cloud."},"Classes/PFPolygon.html":{"name":"PFPolygon","abstract":"

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject."},"Classes/PFPush.html":{"name":"PFPush","abstract":"

    The PFPush class defines a push notification that can be sent from a client device.

    "},"Classes/PFQuery.html":{"name":"PFQuery","abstract":"

    The PFQuery class defines a query that is used to query for PFObjects.

    "},"Classes/PFRelation.html":{"name":"PFRelation","abstract":"

    The PFRelation class that is used to access all of the children of a many-to-many relationship."},"Classes/PFRole.html":{"name":"PFRole","abstract":"

    The PFRole class represents a Role on the Parse server."},"Classes/PFSession.html":{"name":"PFSession","abstract":"

    PFSession is a local representation of a session."},"Classes/PFUser.html":{"name":"PFUser","abstract":"

    The PFUser class is a local representation of a user persisted to the Parse Data."},"Classes/Parse.html":{"name":"Parse","abstract":"

    The Parse class contains static functions that handle global configuration for the Parse framework.

    "},"Classes/ParseClientConfiguration.html":{"name":"ParseClientConfiguration","abstract":"

    The ParseClientConfiguration represents the local configuration of the SDK to connect to the server with.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type%20Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "}} \ No newline at end of file diff --git a/api/docsets/Parse.docset/Contents/Resources/docSet.dsidx b/api/docsets/Parse.docset/Contents/Resources/docSet.dsidx index a9ac4812eb25170a0705a3b02eca72642ed6e0e3..c10127f0e1dce674cdb8f448c99e7cb90e2ab0c9 100644 GIT binary patch delta 15194 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 delta 14524 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 diff --git a/api/docsets/Parse.tgz b/api/docsets/Parse.tgz index 61ddc8d6f30bc1f63d9d10a3ff882ee28f7df25a..cfa9c2bd5e66976bf246ca3ee426917d5141cffd 100644 GIT binary patch literal 229041 zcmaHSQ;;r94CUCiZQHhO+qP}nwteT0ZQJ<9w(n^F-P+x!t*z?nq+dHppCl(u7z+ht z365p~1bXcc?T4%F|LaRSd!CUZ-(z5}VLPtvc=$r2z_C8YjZdiUc)byQqn9h2G1iVE zU3z|>oJyIUAwr$jsx$>cucQSN?t&@v=?I&at76sJh@sPvfh!aI>+5JywrJ%xH^EVV z){48$dgmY5@7cfa+i%L2B=x8(D#A2b*(GFJV87jdv-zhs{bz^%XXkZ7;i2-m&0)XO zcbnnMXMJwBe!Kl{r`?y+YIl_=0H(l=1zpNW1LZ<1PBBd(GF4taeK2_{`SSz!F^*=t zUo)!wU5m!rNwTW<+w*3x*YwYK=Ha5lZ>pb)6lF*cGkwf5V;QTFq?NOjK!ObgS zoIJGdQL+<@IT*YiVYlZk-R94>r`>)v&Tq#zA#nY69Ff7rhv44NC*rImX??372{wia z;pS1VLQu0&Ry3qU;sP;YB-ket9Xlx3Qj?McZHF{~;dcxyP2ScfpWl6}Lf}0dfDiX0VtNUlHp| z!Sx;Xont-XWpSs`c;rcMSE3e;d=j4oM zT4Jfd8zbjxzJm4Sp+CL>2OrUAp9PM-KeJEf^OpRDkA5pp!1McFKTA&>^SOMDM+{Ck z*W;UHzL_8MGols0Z2Ze@+1`S~tRC+&USNJ0Bem6o7aR!BY{l-Hl92yUp^2HXa^b~> ziUk5V@Q%mBYyIjtla4=4FRWT*WtM2eynLEEt7$j1_~(5rYoUfqQMB|;*b6{q(*=kca=Bc^@_0JM1@nB1aAs)iFC>6v&9(C z?ac?{%SWlFKR+}lANknC9QPj|4eU`IEBWJ~4>h9|E`%}&>vbun4loA@JBrF81;gWQ ztcU46t{*tDU?<2Y${7sKvSHQ4hQN?|F+w7+5hr$4ii1p+-QLoK@*SKEG*Fl+`wJ$Y zqQd$>DFw;Cp|yu-wH%4q2uY1!)|QGy8Mzvxzrc7QL8uxNa|H1+8xlgZPn37B`a^p* zX%VrEQCeKx*2zS<%F}V3!Y-%29kAu!_>vk6WDMoWg;y>|0~uSe5toG(AteV=bkmp> z$;CBV3imT|@h~MHqw-&@z;zPBF5UV2g%u){dBFo%s;Mt;-RU;2uL$w6WECN#HHUUJ zU?m>1PkpZ$Fs@(n3Gj(HHBld;kf4%jBf^lP@1f~|>fO+&LDzMFwvJ};o+>Zin0*9^ z_oLhu!$*00ZmqbcQmtEgCn+cKN%Ud6LcNerNs)C}9_0Cm-sl(Fg^kpXv6RQzHso91B%q+Mkzk=5~H)QqGDnwT%u2Gc$G_jpvh*lf4fS%e@mj zLOJ4u*E5~Meo*CSJ-<#JFY@r-stJ&dyszXXb@-$xl4JO&Pz&HFlAD_cZB=xEKulNe zqZpnqki_+H^wfPS`5YcEWO1Rbx;hw73A;7+X1_C^Lk(B7A`s+mdKB>wlWa z@-#-FZJGh_wTQb=$IE!~P#5ngthzaTHi!2KyO9kC+U!WgyQ!}R(u^k3S<7W{Yt4sP z*-HlWxbqnp2i&X$h5lA_(r*m1LlIJ!8PTBh0&W~qs0aS z8eexfVk%uoopXOnyYKtguztoLv3??LP3!g{ZRzKUOFD-i^sm6zuk3Pf`kVO1xi7I^ zdj=nAeJgKX3Q%7;yZCO|Z`(fNn=xxN5Sdgfep&395qSg63Z4I|yN9t1 zBU@u|=>0e@Q<(L9^*@kEjs$KHee|oVCqzvC(w}jW{M6FUKz;oFOyeb2tt^a9{tDQG z{I|c!yNG>7!l(UmhH;T>W4LRHp8WdGyNZ2jqB2YTyw&IoI(_^SsH3xs{WvmQ%0f*4 zdI}DjJP>mHcg`_ten*7Q_+7s<{!g*}Pl0dI`ig{@`1Lf$f<^y5_;vUoWK6aQ+T4@5lk5r^GeBFpFcLbmiiB1c!VW5k+ITelPmdi6y~gy zC>o>H^gvm9_J1giIJrKCkomj*v_69eYPPw@m&=$F-VBH`qg~flwV6@@De#c(eoG!r(GBAvY`khWj z-}vBL+N}Yp>uMV+r+wj@`)CLMa+O>izVDzRoa-xmNT3Cfbg*E?8`e4(7eFrGgcgFY z@vO1UNcbN)I8ViMu~~Nfp;@*#78=+>e%s|;x_c%@-D2N+#Sy#k6=^pRxu^8HHh3(-UwztQ+5;piIO7|DG1Fd%kx=5J zEtWd|fm%XLD`64*LIBxeZjM40NE%R;a3tayj$D~m=#9l9*22IFz`t8>@L4Rrr1e&D z)n>1&5%+pG-8rx~IJV>|m+lS{bf>t-z7o@Zj6jJH92Nbdz)*?#i@Y^j zXUR&Oej6^%n_=wH$|-$@(XvXc>WADblPbqRIxPLDh+q&1Z8lfPc*Ed&_hK}3R?NQB zhIwPmG(09d| z!Y$?T$ssutiF@9E-QlohiU?P|uv3n&`KkzR_^K-^@q_=xvj;30tb}$pp8oR}lA?+* zkq7NW_~JGrjZ8;P>->+JGpu%!rg7Qd(=>!|jqru;DDNs(EjAVas8 zCP%w3e8dKjWlWa%$+OCa6KH^wcs-yujK{9oq^uVx+ECIQ23hKrwYE`Ee~S$`78>zR ztVw-om|RxDXimWz?9Kn{S;RB(*8(IW$sTtqY-sBQij5=HVz_xkz|rn31ZR2uk@)wa z<&$#$H~iyp)^GGy4+Qcn6`vy%BPfX7>I30ZyFKy~%yaO|&NcVqq~Zn0yWr%focG+| zY^rN!E>j4&ohfnXjYW|MKjDmf=2fuCb7Rj6w=Ez}-z>ML>zgrP!AIpl@_~Vy5(S0g zf?rzcQF1Z02RR`rBw1Z3I*qEn0912m?nSchPlqPohW9B|GMJ&m;91`IN zz{4qLS-MkuX%?gtmDVBgF;C61-9RtAMHO=I`$!Pur%@n-B~*`w_rqo3pb6ba}mRGgjHK!E$j>~}&i;WfOS z1q_Nqldn#+9Ts9aG|rJF-oU-2mn^knN{6nF1N=^TS)N{4jnH% zoFa%j6(^sM$<#5@L}J~bH$3$fuo>WBzxYQ!y;Yrf)}YZLg@)wEYr>;LiV;x>q@znh z>&dCz0CC^+?zo&ewek_1k#ffH=V`*4pGiLK@*DIl<^u5h@eZ8(_DW4@ZEqCi1i$z* zymaURPD5hU&P*oKOW-6L63aH7%4+osWTh?~t$RktRQU`;ahO24a#24|u_*c2er(}3 zEc8CePU$z^q{>8d;c6ch-hI2U zIL#2KFUXxE#bw`78y5B~%J)Gu&nN?u44GXZ2*5t-zMnl20$<~^*Dj;GqZ|M9hv*sf zxa@U*o8tDKDX-~w8oKtncEO=Rx6N-Oe5=iG|NmKre|~;zzW+Zf(EKy-VyBHV8Hz6I zlFCg}s2zDlt|zf@NHq0$avSY<&ImD)kRiEn;ukT56LemdFR@GTw!pK|^}F+`E!Mqn zrE~oOdpysy_1pBd>L$>Rv6mXTD?qjKFArynr)s|BLU*V_8xTGfRqhAj=>QnvnWLB@ z9f`eS1O5_uER9R^lUryeJ7XjVy4fF(NP~acZY6ZXKwiK^m;sN5 zPcijw@8#eOX$TT_oZy3tX7}={o)TRFAatNc{#2Y92SVCm__R$Sy= zEDK@rfh4VI*nRv2Nw{j4I%s8-Q!{yGor(v=a&s^cPO(BxIl!Bu#FKUTA7q<>N@8K_ z4w(3>DgIFhiN9sY1GvBhuTz;PC1yll2+2{3A%^Gs-jf_tDT5R?XoQ~j)ADySG2_n}~zKqWdEH9^}ewWcV5 zSu%Y|3rs{FQR|n}gmty`I^850TxBD|5-T_!4ZKpA4H+sT|8qm6x2QqZOaJ!5gyqR` z03fO$_4+WOYctx>>m46&-ihf{xrR^)LA}HBCa&O7fXk`p*F54OGbB;^nnfM!iA^am29_lBGP3`WqFCdC=yZ9#u;THa+t}E1Mo{hgM zu;fv=w|FL&hM}qs}5LYWseNa74g-T8gS$}X8<%|NGD$9aPkBeA?yiliAK%| z^1nG5(Vzq@^`V&wEN`FLBD4B;o~u^B@DsCZBdo8CiTVx%xo3qLT4s z?IcboB}+vTSTtcdh*v6vCz1IX=U!eT=`(PFD~wHt%a1~kT}y@p%_{TSe75Y zH~93;Vq_Ms9ZfkFnEB>-L;7TR#kpep?V~*S>Eu1}=rlO%I&R@9bRlSF+{kZF+`zEo ztuy>1PIR?=pEF>EfaBft#RTujS_zp3snOd=1YcS ziq2HNUj9#rxS=@TeG3+|P{UG^E~oN+WE5$JUH~|M36Qi0F*t=rup9K}hmCcnBzQj| zxdH0hU^(}D37LkwBy0QnTvjJ5=9WJ^6zrt2Ww#T1jw<)Bvz>}hZy8=pse0d!(_f+8d z%h5kB>SGPChJ$iB6wtqk)D?8c${GzFbg zXSQ&hfD0g|AKW-ASSBKy?v)-4YSz%k0zi~IFxyZK_kvwSDY3Mwc^al;F zYAOF8sE-CwyH?Mfi?~$Yf-MW96z~@0!>Ykp;IN6IHm`|&T7U=iI0!X-rD~}O3%%9@ ztoYhk$Tl+3+G&2y+{~F7>FT3^hy$vl)s(Z^By>bUZw?Ob&peqnL%_0MP}&8U`(hB{ z6ai&96;x;Y^4_vKvrtvKGB98;^9gPJ!^6(SjvSrzM3XPbXRpV9Vx?Kql6$r~6J>1Pt zPIdM-CS;M%N@$q>_~#e+-Ui^EYB|+9`Tce)+kp6Ao~@hE$YpSd)e<=Rqxb2&{kySe z+iljp{ZILdwLW0lmyWkn(~1Aua-;PWF{?2vz#)dE(Bj{L;eZ0%N)#ls*F0Fkz;w7^ z$f%nscr8=GaV?0rMOy}_S#Dd;Bfd*1J04NP0PiyMrkCnA7vf!rS)ERHH8>7;awI6( zjH=~_+;Lc?L4=Kv#8q-GDA@?=Y2=>tM9wDV2bm&Ykq0m5VyXL%R zDOb#acU09l8)G_{Hv%`8kl2KTRFaq6Mmck{NY9a>B!^92w>5Xq(L50?WK=C+%oj!= zk#0pV&pxiws0|{vB4}coR#I;a7P!^`DnnE+fw+|`>|5IAwX8oeRmsl0Xzm~%7k>!n zKd0l4!@^+u9OBEau|YTzcZDaK04Y>VvaPZ}<30icL8GEy4V)En8GG_98(d5>f`oK9 z!g*5gtgw|N)s}EfwtWEyJ*vd-lg?$z?$w_i~?81+#KZ7&^&Mjo4Ghl zH{6_cWt9g`FCZMau!I~ex9OVhPB|TfZq{!4@Q=6y!t0d(YRA#J(8+(8{Y>Z1FE`bb zC!4b=#B}io-!_Wd^oQ>V@G~r6{uy?`UP0L6_{Yo$tAQEORd~DA9#N~Xh0jcXUSNhh z%P_~#j0gUA>(Tg@9iAK3>fSZt=5g2L@IqQoyb|>QZ66g51-7_^y~-_&xg}BQ%(AXh ztN$(n%r6Bo%nfkb%9=60>7KRkCSp3SRv#$UqAx85kc`-%*vFUf?N$ZF01hG~IMVTh zV&N9798Fq%M=poW4g=cfochNUiaZ%<^Bsi(^i|uMHy_C-M}v1V56uieqH}A^)B*># zACPDNK+kmH6?GlsqcS>?j_@E=I?-wThQ#oJM@qQ88ctyu;XChwFJNW@Gaqm@L>Cs6 zC=juUmeqkZsRP=w0}ghxYa-E6k!b%ao~=fLv?4?ucq^9^d<-gxW6pWN5e0EtouNDL z#;+8!1K^ds2kM+6Ym7K@CrY*h=$Z_Yi~xEO;BpYZ#;Myu6GLTgG?D9(fWAhp9a0gS zz`&>PiS5()~aT$l-B%Noa*gk{puJ`Rv0+QLxzLz`B`( zuwzAfQ)a&SB)^mfk5za}Smu$2c#X2*i(8QKnLA3pt~Zmj zo!C_}Y9nx=4TL>iM{aQSj05($Mv(gy(#~ohEF4uWxlCFR;5`eP?89!Xx`5$b3l`jy zN&8S?M8zPo37`yTwW zC$4?l-fIu6ID9`2%qOp=un%vvyOYJ?sx;+ z-gKjlv1c&j=dg77liVID@lGv`KucQssVxJ)9I=w|d4N(~Bb4!TwTBLPanVy~2J z6;%5$u9o5r${&naHHU|DUF-h0<`D-FvJ_ZA+FZ9n76)x{67M>~S%cH#Jf}=3?L0DR zhddbJlf5hb{L4FV2Qq)>Mc~#y^uoFx@X|d26JRlwLtxQ2z?Zs-*biz5LkPJ)p2RMgYDEb7 z>XSSz$T>{;Zu%usI6(OjbXSN-smi`p7*>j(LshB73HfCJ<|=mnsWYpKcJC6-hfhVMK<1cm+x~5%(H}cWQVEd@T^+(Q1_HIY*eV=*gcf zHS6?IM{1R+WpJVHe?mVI=Mi%<+rI+3!JpvKR5a{44#-^xBMHdroybJ&NatLQt`%`y zwSm-yxgpt7U{|%*5sN2sC$KN=8p05CCMbdwr29um6~-0X#kCOp@kaSx#YB5ih(@gG zYA6q?Ma`s8Qjd4LHc@sjr$XsK0HAto9fe2G-1RNq^5 zRu07C7bAAlTOky~r?YyLU-wrIgs?vt@ZjtBM9FYDZ~z@Nd75^y8cCDL4+OIxJKFD7 zimHQrf%8!^U3gk?eqAWhexGuhwTLAg<_hl$m-9VO5hK z+}k%f5nRAgO`;CbmSA@r`0&l@VwXUC0pc>I%i4N};HAXZ+FzPO_+=CKpbt>)FDz0G z3+7(rO9v#($fMlrU#`H& zf^~0%Zo#|0+dY6!t?keU=@}spp|jr#a?9_|56Gv-wxr#d2II{G}-M>&^CWM6)v`;cDL+ zE6dLY#*GUW?y_6|>!>Yh$+UY7!%I1tN)$-1W)Dmj$4$&Me$EwfDrl!>H(N@-(5~4d z6YkR~)D+r3(Q|jS_y@FPDbmAl_k4g%RJZyobZB!?k`&Sj6w2Qc0Y7k&TAB4qVPuzX z^>QXIu@en-S}X#=N8?qib9ATqlDz_H;H#B&93NK2v{B=0WW~BjVxyvwJ@+H-(477O@qj(Q8{PJuXj{UKSp;xbX&_#hZl3aD;~h zk9x{-RA4l<$BhYZj&HU|sb@|}TqoaCQsM4KPvRslpwzWl`*kdF!0zSUS?T6XJ z*EI;a7bA*!UEy)ktt_Y&MFAmgGMhg1+F;+h>PrQQJV6JUrZ>~3yfo}~Yp$J>&?GGZ zO>MQzrGJ30BmRX0QHHz5C~tFT(!pj67Ts0&f=a5=vz3096sw1@k%zd4Bx5{Ng&CJu z%kYUHPri*qEnUcu+9mMU!b9|lA%*2XM&dH;I6rG{ebm8$2dEaIg{?XBg_F>H#UW1} zj4e-y^=%f#v58(zfwIb%XYeSTj5*FVaqJOcnyBf zvp@{f7+uV3cQhG!!1s`BC_)pM042RXBD$VnwklMP8RH$3?}okD1AUOeL-h%G>pplw zga(h!!S$kdV+WU`d3JUi`%*(ZU&W<=Xva59|16f}{jN*T6yWFdi;W@z!6IRs6YN?0 zDG&O5JYYD7WM$A69p;|a(hr>u%apk&4?fw_7NP0g#RC^`1++ zLws1<8x%GIOo+3xTtP#0?-_NVfcpCbqvJHb)X4`s z?B>1&oa1homj76n}GaK?o}uMwQWp0>N550RBtF?ZG%0CG0i`8I!?k(>zN#{^8B9 zmPQ5m)jyMnI(j7`q5QB8=;Ngct1@XV*rEf55-?DU2d9Q7ffCS&iQ7AA1A_Q+4G}}y zQj&}K!b!julY@p3&~MWn0429xA*jWI{aO`AX`3h!UI60R1@vZi>a&IE-)_qhac30d zz+7Fxd&Au)>VQe0_Beo`K)jco|NhDkJdGC!yj3>s{HoHud2$OL_Z+{cm<~E;et-Oj zdKYVsx~yvy)424!9f&T=c;f<-w;aFq-UH9(sxxgF-mt6?fk1`e+e}KPgZ0mE#h$_YlR2iYkF*BK)ZG(0NE*1Hdeg zf1t6&DnChh7;OSjUo0LA62qewQKj{G;o;++&Y`8BbWMl~i*8w{h~`RNQTQr$OAGzc zN4VWGYK~i2-uSz+=SfEvuxoP8^l7}Q!xUuwYl>qh-Q8krc-w6=r?b$@(M<5djQG^zu-7K$#cyJHH>gx4I6O<;aaxfwn${sNJ(A%lVRuhG z!4dM5SazzE>_~j8P4<*}X^>%Lx=rWe#l4WB0E0@|7|j(4ytM69kyc8t=(dQsFG6D= zahFh-d|{89uZVtc^5S@+Wr;*`3pMa%ypEZo;HzjBK5!B+yD9ZfI$Sdkd%FpxNa485 zI3e6*lBGcG0Fb_a8SWhbA8}`Y`MP(1Zv(1*2VR`lvCk~?F!A=Cd$yd1o2P#aUny@a z?f08{7ha>{TLVV_DO_=14QtFja!=RNand8|VBO~Lcsp=BmplAElK6+X_v&{;&%JUV?v-#_eB=fmYz87L_!+ zz|pd`ha?g?a63z|54isZ4INW8EOgRT*`!h>j1d=UG>k_&3@jDfW^}ozAJbdGAKXXN zaM`K#)=tO^&NkhvR%w8L*gJEEq0 zv9_(rF2Ka{hbCkdUiX5uK19nj!VQ$6H2(9m2Im zRvnixSf6ZXyEAt=J*5GWd2+Mpo`G)u)FhwrhB9iO?9yuig?5)IpN6iu0#Qb@v|sus zF$%2g8nbnm3a;atOrg*ESA&2+P>-a)PDD(w25XYBZAPQhY$QFOMweLftbV9mdA-6j>ds+2 zNE;8=p%F^Yv5s|Bd`BAbBg8Bv%|nnRG4-Phv-F;{Hebyzq6u?-(nGp4egaD;w8mIe z&%=^*mLb9rRY$6ib3q2atwF4>m->i8(qW3|g1K0t!@MV!#fGr5zbLPV=q#d$m85iM zQ+Gt{>prL3Ovlw7tkyIl%WnTaZA~ zW8%l;5lV#hLCu(-g5El z``!TI0*1HG-Oz^lP6h7%n>a2)H^0>fm+_|W!0X1Ax9vU?(e~aoM(sjdehcr&@_b*8 zPuJJ%y74cKr=|S$wy)b_OC4e0Z1#ebMyJ^vPw(wYWE7R!&Bt+TK z%cbwXQO<~5QmK?^rH4&N^CrDDQ|yEY8+E`c;<`W4aE!B;G*GLKQHV0m)3w-`oZrUI zBV@RnoQhc0kySU*o75PY&$4RYD!4bzuv7wS<;RK;S8|%bO1XXUj9^AE-TCvL^1)>o z{v=Q{$o(senrA+SnS`g9XGlz@4-n}&N4)%w9G_OQw4NVhb-vXnM2%O!F3u%O7kL4V zZ3=6c64Y*5gMteTJC981$~1Klcc_C?Q7qTFYT&xO5rIDDod>V0p+p50!K8dI$dy%g zOAvBf(j5Z13XT+7z3>xW)@zABxT;wFt-DQ*2u*P5i&X-sX772D4FgkN?G_*zch)87 zt)zFV*^x_?-RNjdR<>SK!LvSPzT$FR5*;9^6yp^bcL}rY4M$F1*s{!w;@jz2^~%jr z_yQ**#X71c5@k|cTShuE6<-Q+F1a4H-D=C?(i?Q9tk=ay!Z;Pt(16g2WP$>H7_V!| zGz5vlpA7XUCnavfrcM{-L?8A9FGiYE?YZ?)_vR@a=YTE7r3e+afi<}7(I1~*F5C%E z+{y5X9t(rym8(kz7`_{VC$0g>u}af@B#%F2$W84shI>2KBFa->kPvPp#P7zSVAPIt zv8`-F*+F^11HZ;LADP&4A+0P{iKgCI3|XkBY(X`kyt=h%HAq59YDY26cu;6)U0F#5 zn7%b`ReL8UO4UkbiI_Hdg(`)VN~j!W(e^b6%eYa%b5rFs_q>ITYO4NEs{30iOw#dB zKY9SX7Jde%_L^(sNk!+&_4r2awdiT!J>PWe=(oe0XhUL`*BN4-^f)Iz>8s|Zq`hE! z?;MBCcl%3M=lZjND&~{lJ3AKG?@pBN4-cW)8OX?U&HtRrDmBr280Zk9tr++vUi>22 zw?X+075i#L!Sr!-9ht49p#3o05)r?Vt3oa&bk|0@5=XUxC|icLZ=kiuvo)!skZHo- zoz^EkE&6j`%P$ajq%souM#LF88l=zuu*TJ3#A?#fYOtalLMYm;2`%@|#DXe2&oCou zlmX^aHJNH(zU@6Ef!=hVVMe`LS=?KPdEbvIJ))q%d5>&Wpa9RXT z)8m+izo1ONl9@eS2R^U~=T3BWxanmAC*^eD7OMh!x*j$f47Ewlrb+>DsPwQ_99Fk4 zdo+%=R(0GW*ShSCBD-aL*F`!+=n=7r;oTyI6%sX?2aMAVK~?4=+rtBNDTq^%4bG_lvnYzrtGp;==Ao`e-nY*Xr%1 zgfmr1=>GIgWbNE0Rl-2)$@hIrSSL`UoKvVt<(7^QWwSYmJ|r?9wH!kw^!e#Y-X0?tRNRV3@N8CcWH| zQ9bHBn`}i-&f4aWV;hVz;I2$+{Mq`}2p1h3t|xrr_l>C#xPmZy&iC*(&_(bXCC|{4 zz_n+sIq@UzoA$NsMzj5Dtx=m%XV0NClXn{U_3b}SvNGFlrZ$V=-J=8E4`*hbp=es4 z9Ut{C6e+obRc)0VJDA@t_n~JrJ;-_@{4X2j^@JhZ9=--Btm6!-r+F?7voV*q7r!u` z*Sic7NBe?`HfBYXYW5#;sSF~CLvUG><~rx~WnMAZB~-Y_NwR{xawtW!Tk4SH-XL_A zxcwLtXZ5T&&cE1I|C%O(OygqC@AuN(xFT*38N8Jlm!%zk8&uwAz@UV{aP!dXtr1ZsgvWG@(lk`)i!+Cg~EXo zi=>-45Dx*{MNLc``N+b0J|!bWhgl7m1ce=8t~hwn zlJ!}%rr(PIxzKX5AX8w!#MLcKml`xAj^Mi5Qcj+aa9)KE%q|RHP91@sBWv`psd<~| z=5Xua4s_EMu=KYTVb5xE&%mvi_6|QDLy4rJ^~P|F+&)_+unRF6=4pK8nw z;}Pt+quGS54>wC(EM+^qLQv5qjkg*;kpsTyD?w8L`{N92z?Nm$68R88$~2p)qhCJ% zj{}W;G3Y9`omc(Tktaye zYn2!n^a`+><)DR+?xnd1Zn6p$e~Q#V-zB7WW-sJP7Y|2B^6!@(a5V6QF^`@&{%!E4 z&Uxe$N_+kl)H?dG{o1(A>XCVq@lv}6J?%>$V$T1DGB+lW=$>0>%8?C`^~Qw272n#J z23bFES0NC9P*-a8jPhLk7)bxWIMf*h2Df{qkK1=)bcc-=BTf>3tL7veLl)tTC8CHy$omzofUg_ zBzwkREgu_)ksWW^t|-DXKg*74DAnzc360C)>aBtIA6;q5I4_9@8P=&5Lgo@*mbd?^ z5lGDf0c---*`+L9KcYjRE zE%{Q`t0f*|k_r|&N5~3EpvS@olbdDYDM8 zMlx%~&)d7Kx91a&A(pwV)^pZ4S%rts1g6mu$s7&M|2Ny&hN(ZXc=z8R%W;A^T{-|% z*`0yUrBYfGgSRiPR8XIy$tlC(cy!l`=;j;L2rS5MtXYq*3}Q!MMPf zDCrbGly5l5@QB$b<2JV9U9IU<^+txqGfaoQ<36G6u5vcQL$NBeqwQZ_x0J)RJq}qs z5!if5cPG|FMgrZbCOZc%H zW&`fe4|PN6m_EH%BPOQ6-=-@#H2L!}4vjzWPAyGWY4ht?4n{;GuW_^F+DuItT?es^ zN#P~cWXwlagP8c{oL;FY#GXFJzkwMSLoyswy>o|^*3xlI8BIDgu81gs~u5S#@Mf1-FN0t(`@104c7 z|I2k?mkG08S?(+gf((OPlYrR^fz>|ZEF-vuAle1-U@6|K+7r~-|7a%(CS#Wz4C{Qo z=QB;8dBB-~rBV|sQ>ME(rDmHxFKnv{tq_^8%*@UlJ;T(8icRH4g*TR)J4h+6>-NNC zv1SWjrj<&|?{Sr|sPH{u!G9c(mc`MVQnx*2mp+#*WKddz5n~^@SOh`HxgH>}OjD9^ z5`gmjlSGyYtSIDqk(NQbgy2uTC`};Nh9koXxVjhvhq7eprLp2?R|-m+z)OzsSMf+8 zS>-28X^1=;?YdWApoa7$UlyI;%KZ*0A$LQe19#_kb!lJ5w;$~bbB;N`fZ*8-g)r11{IOOo4d9g#_BF1;>+)1>2O_{FcZU$i=%2f-cuoTGmM*CZdn0?r31$#VD!7w8N zWj23ZTw~M6*m$)WRJHAxKWr$@@y(mEzUgy}e zFlA{?=Rx+cq7A?@pKA=}VnLunEka*w z@UAmz{+Rd__ zsArk?d)fo=$}}zg9)1nmHS0G0u3$I+XeKv0=%BCH(HnFW9D^3;`MbxDZ5{HfF@qcxkZH6Z zvOipiagAP;76A{|4VwGIa__=XehztU)&$<^Kmk=+Lfu_aF%iu2xBmB0Fl=f`JP0Jc z4(%{o(z09$s-jbEcul+*E7)2FX&!2pd`jstruntyxG2lrxnyXmOuwRwIzz%_&46rt z+t&5%@8NFEPqz*-WB}~0cphaP9Y5+Z#hWp$(B}J`vDqvjAvTbHXB&smL(_L5SQpN(q09>R}l%z%Tcmb4RbBJi;3f!cZFNE&_Kdl{1a$ouw<6)R;Ug9bFUT3ypas zU&)fZ59gc$?@Kq1%fyahJR~@5u)lzKF1sivZ*Rz5)FR~OzXJH^GAtbFEf1)<2h*AK z%Zf<7tjp*>@4$zDCts1MyP=$VH19z%rcVQCrsY_ixN@Y>zMp_;*KEnQ81p&5i@Px@ z-{5H2FX8msSIZ>77cPd52>jTA@8OgN>+sXRgPT$Mz(dv?wl?Pt&d;K(W+kxHv4sG? zUrdXMTja;o8He9Q>{Gn`-jMz5$MWyq20D%J$~Opl;=2TlVLNT%H99?S2wL=;efH3s zhpt)baLYz~V!ZM0_`KrV<=J!ekMr66i?QA^voM%w8=^cgzE?(hQw%W428$PJ9#r)I zTV30}cXYU9^f1GIfuqGLzx$8Nd|}S=a0y;ZnS>N-cMgh;N9@eyqeQ{XCp1|KC27aOyuSL7FU@Ww@50l19{3QWSLU zxfsn|l7`ZCtl8Moyh6Vds>FFya?7T{ZQcA*PEX306B3~w2vKgV>S2+T$&j_6d>6^ zy|Issg+COh2Q3q#l=AWwjPU8Z|IYSklvJ~2pEX=fy)oh_2tB11W zEXK&b3m_txxl_5R?dvAizs8Cf%KJpZRI^c+#%k_E9geju)KEAkeTO9iteaf3k*#4X z6ik7#t7n|OH)!2gDKULY-d*)=O16a9ehRHYybNx*uYXE>$6gFHx7;(IzUSgxBagZh zFu7j0ekTPiKhtkE*9vt?GZ=N}bnJFMJ7TW`n=&{4oc1#_W??VuG7tPOCjXE$mx)7+ z8ixSKV!PLR4C|M0fkPHy{2NW-pgL{>HU|OCCi)j6BZM5SbjXvyT(<|LbR8R}EwL$g za+fk46!WAWF}%Mj%}b7v*(k=xzK2l z!Ul+XgKffr%)-5E_1P%WY><9U%fEpN&3mx>Sco}i8yR#awl+ANGdb1Cxk`Y+rbDAD zCO2@j)Hv=^#EP8rnxT$`>x)ZAaqL9dUIDJ}qb39Fs|*drx!R-2$*lnCx-Ptk_#~n* zX-JUW4dP0ry1j{0agYfbeP06ZthaMt zW!6{H-?d&J7956L|J|@`m7M*x2?+nl+qCz|m1eTH5Ez_c#=kdJ3bKGRTVYM@)omeg z?8uDFwo8?&IX^A_x$h-UnzLMwtsEUKiz9NO=vLtCm>#@h3=VUm^TlM2)}A1}8stmY zr^N@wx&AWe>y}`_=2-cV4O}DLn!0iWTgr8B1!5ffhZmeT)ituk$}{t9v?lGBHiwOD z(ZzX%6kB84y_ou^wJ6(5zCJL}iQ6{y`G2tSj={MEYq)l7+qRRHtk~9CG2Ym=ZQHhO zbH%o8+s?_}-*>9^k5kpv{nX4nJvCF+(=*feeR1PpbTzSC6a}GEFGRR8SRltF;v)ZZ z`8^&+L$!u6r!NM2neX8Hsh%8-A7;Jz5;~sFc@v0vNo7}|C>hZWBee)@@JEJ(lAM(c zF7~jmLCtXbl zzv1M@Q7<^-S`d4RqATGx)Sq$@F_|L_$dSCXqs?MqtzsOti9y-8h(n&Xe$9>8Gkt7O z*=gfyY3U&p$nq3a#&XUu?cA@&L*(*>NG5SlOqnKhkUQIlLH9zAPh(bM$qVv zwaW5}r11qJ?VG^VWQ<6d(Q|I7s)=AnvJA;G_iQnHgD{11&P1^fN*1n3QTE#?O$MAci`7(p?Belp6r(Tl_* z^vC)NMk-{g37sKdyfD~bYXypvVSRW|LSxV`KcR=py!o$6bgDFS+4-Oe4gIOD<MD9_=v&69|m%+FtTnrUw0FKy!;yeW*(P8@m zQ;1K_Ta8C?ae{%4c*!G52&cI(cotqah-Fpkd#?bNah z3dxqu+EY>76U}DXGfM~=dh^iR3$femV#Vu5h1hS?X7ua9uG6Wv5;W@LLCXlk7-NYL zdI-+At{m`;E|(9k_i`4Gze|)`$qTE0C7Xp;-_>RgqTbHW3pkeBE+ESG52EMKZMH~4 zFS_Vf4!ZJsmxA0`&x?4)xJGNfO9}p>K8MZ+zPM}(sMb%$k6xjGDc1Ju_+!`-tZ3{1 z45G@%)uj-6!lsSdM*Hg>hWegf!fuG?zGL_7>($FI6PFDuyU#AzHUh`){@2$1glLWE z_ls{+!dkD4PpAyTYv%8u*TmC^VyJs;<4}o5<+itTghJ_oCUP!H93zq%$*^)z@acpA zKd43qsZyT@n7Xo?MhLcB;W${c7aiq)Dzi*MwUCD#IAhC)9|6lFttc?wgh2B(a0>?@ zy>|!Y?#KTvCG9}83SAEIFMEy1{Q1JJG>5`tqm4_WYN(){0t{z1(TEE|M6O48%!ht5 zQ?s0##^C;g83=m?iqek=Js4HjO0WMc3U&Fwbslp4RmXQ>Xg!Q-`gn_QKt5iLK(0$6 zy3=78LHxMM*|hH@hjl4dcejt+B@8YpckSFrbxq|+IOqnc5;p>uOk(pV;I=6Kngxd_ z_;ro^(Hy$cPu2+o+9DWeAR82+JYHN)CzM^$y;NH2lgH)(!Dl=+}44D$~&oVN4LNfeAy( z;izY#AXD(_q@sih<1)@h;nieT%?g96Na{ZdQuYISzYQ$|d&eE~VcI=$5oBxu1AO9JT zHfs!O-;3@Wcf8Wc@5C+%pU56V9}o@O4^pV(n!elqly*<(H$)CkDDW;VE^eDq`H!m+ ztkpw1WA@m%)7rV1!5a_(IywkvY7LG<8IHJ#nIk~&y!P2iOHgF-zx5ks%1=^Vi zbUnBW8LJHoqRUTriwmXUf*SQErgTZLNy5vxyhG+i!5s^yeGEf!K?r$x++zzgNbNG<^Jp>WLbR*ZZUK;PrwD1^oP(BnbTcUvwuR3d0A(9ya_b1Vt}ewZ1kp`mS&y zo@9KIe{42IsK{En9N+t^20y~K%`mgzj7s1LAfi~WOd64^v&=CsGN(T_nG(7Je93b> zqE*RA%r?|9kyld)3cPm)Gz0^_v1bQs!x&BtiqTN@CWHlV2O;HqmH&8lu}@1mNX_g> zi)5Y(N0yq1n+hdC{=$Lo4akA3!XHw`U6!OwW=Q{50mU(;Sf{LZ1?&&6F#k%uB*#H^ ziR4gx?Gdk%o@{la-~ z-9%vM)oNZ|L-6=Q`e6G|Jm=TQvB7WtNI67!c3|kg9FG5nUHyHZG082P!#>FZJ#@Hw z>0RL=2ZNh30cjU6ayPoiI7((`A?MM`ZUuF8g~l#}2$BG9SAGCSjz~y5OA|6!nG!Hz z#-jX_EjOWM-&m!;WgerZ1`==^I1-f`ar+-nzP-f^J$T!puz2`2G!223S-$VH2^Q>s z7#aazj+tZNLR`oPhx-B6EWu`J1-n#>6jwtB@p{B!iv=A4h3``3&3m|2mxXiF(1O{y ziSEpV(8MV6+lC5=lz`FFDJ{@cOiW&=CwcVq^xydFro&819@s<5>+x) zA(RXmhdzRezb>gzc&|nM_egLcnxEb1XY3yyrTECKUx^cAzp1wumL ztT!K-_5c?aiH{u2v82B>6KCV8%4!=YXH@CZnodYUz9?1kM%X**7gpd|9L+6?;nM<+B># zf35b_tcv=H)@-ImEhYMVrb%cTH@J6pnpk+)6`=Gvm|RBmnH%TXYE;C55fv=}HBNp< zAYJ!J4hqHh)kU{`6$AtVbtk0GGolxtw16F2LlR9@I&QLIg|K$(A!%U0zeECiAkL;U z3OFkf-9V2C^h01iIsiEwx-I!dVk$kfo0cNc?)Cu_dblG3`|oWC{a%NyeOvzJOFQCY zm#iAcY{!qaTlZn+_m+$4mTeo45UZZY?aKS55W1WOyyLB@)m6-f=TsdNKGU~Wv&2`Z zdmvAU7a)kTmrOt)o+;(iOc~gfrjlDzD^Z<*Au&1vMN>Gb59u&344k7bvKo-RYaEf# z^T0l-9Up~xVfI0RP&hwBVV`2W!`N&u2=aOP4UGaWyHmo?!{pjlH$C%s38;~5!?^&m zzJ)XPA%7mH6CQl7Zf8Ow(@^4fGaqf75RpfO``n6r*ngHxyncBkY?)nMMncU8)R`OK zWdD!h$5cn5k*mdYhr31^ldUruu}uOS5^jJ1nGTnR)Bc>5 z_5Nz>0h&shPz&;or%LW}@8v5^nf1J;w5S~Wc&5a+L&ege15KnZF~%kw zJEU=2h3s$4A@%bM$H=Thm5x7}80{ULoejdO(Yu8@6(8zJMo{5=B}w4b24Zcyptpo1 zTid63LcnqsPb`r6+N|>Gq?;0pdjP7{-HhI@8OX|<#-S>T@o_r*jT{HWIzkiFBb|<% zD?7oQ<5w~o-}{uQ^=LwlKU_#%*4v{grr`hS2?4{jru>E4jAEOjNkL>_kF52axK7oZ!ostl-@u z?NLjotl(e3?GYKpTa^9-Of3Vt3N2lZZ9R@t+Imvv$zrZI{xu13=uyu*;NMCJrY)HW zWxMdBola%=3jOD2*$RX5CS6KJ^$ap`8o@tnoj9U!Q_@et(z`WC-ID2#IEO#2JTC~` zy(-kV%n}$(pwL_?(Q=Zzuv(H}K+GuSV4H{-(%3&j{NvxVY`ou+Q5r>qo&-Rhw=7}p zG;IX)lE84X1czNBST#;1~J~A=wL4!g3YVk@Z9r~eDV=b(5K8V$5xK~DMLTd z06)oFF!OjydfLrb47hG7$kIaw7c<1FG>{Gd3(fyHjs|m{I*W5?&4MjDWEt$&EA$6l zDRzdy*d-D}q+=PG9Tr5@vW1)V;y|tyo{-Y*eF-jG-9d%&8BBN*gU<5)IV{qavtpkv zNL8J%qw@uk^K`Uc5k+&;I*l4Rej?6`YGm4zs0Wboa#U!?EIyj(D)ufXyno~C`VD+* zTzjW?Oh2M7CsYF;r(`W>S>V^W;5GU5M_)Xze@!e|efmBY9=<1UH#pi~A0s$C*KO-< z_wglkO;|I1XT7c-0nabXPXBsL<(WuH#blYEa2^8TN8E8p#rRMT14tFMHT#o9YtiR&UR|0;=zqd~n96Zrr^P zp38RI`_&kFd$K2idQ>0ADk6Zjo{I5C$4GoAFtEQ0Efk=^v>3;s3nuBt-ymI%V{ABH zsci`=YL5m=1Vh%5sfDU(0lh3zPEEB}OULk}@`_OzG>W=8)SNx!AH;lz?=kZ;e=B=? zUoyg#14G8CmS(V(agXVf{d?xM3xRXzmVHQ;!viPQd&4E-+Lk45t@j+4k=ICT$Jc++ ze&((Wb^|e(^F-p>H-zFGd!u2@BT1+qrH2hWQ6v3W1bj%{29dVr25@k9klW5-q|9Hb z5a6!?Hiw)j`!QywvHUNXm>mBJC4RzW;O14ADkaD=N2;uIEX5K@@!%vbdp1{a{Fev2 z=E0U;FjP;X!4P)^C&458elOHQaRCY{s4zK>;B9k9y~D8bw}(jYyi_-^)_uBVNjVb` zN%>1Do@P2R2A{Yvd1a`bj%*iS)Yg{+dzJaS1wYyx62xVn)}8*{ zcnL~{4PDf=LfLZu_=8gogOkIZA=Ytr4t!LU;2A}tDAVMaFD}0RVX`U5ImP~{zjp8G zatRpnpa8~@Ux0SY!g6@J43H~B#O$HI|GFm85##LHs|@?d+pO<4_z3NFL;F?$pUf=C z=+kGf($wS>ZXM(j%xrq`ro1iVAz&OuyQLDvc{d&+H^KAN@huC3>d}05zDj(&)Rh=| z7-`U|q(*J!XBai5Eap4@{6cH7y9KUyHEr-_46$t@WB>X<5|G0ztLRIEkcB(i=DR0; z=4#gvgL&RtSCRHKet+SEQJGL$IOwARQ1K40>tOd7k}HEB+71a|@W@VD;!LS;Kbw&^?BB z=Z@ohj`QrLaNqZH_^IS#*lN3JQllp%q3VCkGYxMiUdby1i0WbU!^#N_KjrWjXT_>m z9)|5r!}0rU3T#s7^3E>H-y?xv|Rae!*R{x0># zF8_Pl{Rw0`h3EQ#XB%~}=YQQm|Kra4@dlCduVX&f_x9)^&e~X9?w3gT3gl1m4=GM} zo-N03J{8cJuFk~GOU9xce-)RlVLaF7di9It9}Gm4u-FTgKa&Yw7Rzxia#M@u(P)qF zF<@A(%rIo(jF_P{SL7E9NI?AnAXID6aO=;>ateW`h;nfdg9D@_WyYzg^$2w^!KbxV@bldy*P21mC^y3fNFWWeH99 z4Xhw9tE%2jUIaov{C#AD6p_Dj?TyW?ct`)K1o0WADu@JywPF-Sb^ zgO3%hs;GGw2~4GL@5`!nSyq?05_U=u8h3R%s==ytbXKHvoEM>)QM0qdcD@yZnB@7; zP2s0vv$MHolK;rQ5?Uqjg(385B!unwHPfbsSUliy;6z(>`2!0T8bbb@u}sP^&oV`- zDvdlon%q2JPzsNzs#aOQ_V-b|ClPWcb)1<`%0}lqWzbBYU0*cMvK+v zQn*R4AwlF#nsl?#_0-c+EUWNc9zxn^b!-0P?RMUcCG)zsPdp+_U2OO|H8HZ4EL36h zfU|`K{0vUY_s}KP08Hy9Vf5fU^!wVT;uCm~h#&97H2`MRY(61FX-Uc>;j3IQKfA_t!wr6z@h8n8GBV|nd z%QORk!5XQnB>Ecb-Ju0&Y}qgBY{Xr6;>Y>!f|AcT;19wo?2Q5HIR%ZN0akBSCGHn3 zB7&js@CXluKMhXWi>no7oPFW>S8q2tXXyztL4f``mAf|m#V}OF?5IM!oQmF2FmFPc z!h(d+k5)u9pGBPhyowN#(&cdle-2!Vok4zIW>MQOypD7pb@ zNhOYkl=l^$EgwmM+-OO)L>)SQ3sL9EK;Fagq~#;>jTz)2X-|NgksRj(X=jBtz0b0o zEGVrL4Aldv1Sh>~gFYw288F~lmEajr{R{f}Ct`R`zv4_9oRO*h2v8^kqOF(y)&`Co zJ!?p${TRM$NK{oJ=b7zE&M5;C9|~lA9fZ-9eHxNkMN#Qd~U`MjXh5(0!q?<=0Y2@E13Tjw48I!lU?c& zWSWT;S?=-IiCR@|7bdg437_u8;qcPt4o2Dv9EXih2YX;9?M^Z1z>Z>WF2`y50Q$nRLh|;c=n z0@}fK$@DO(T)+=(8zN&XlH4$tzXrYJ zvLX?{M|(u%jl$?DXanc8ps#Ek4N#5};_r-4;fh!#sO2mW#EwcNLK>me3x3nw)!<2k zrzMh_DK-U>;+uwG;Qh&ogw%(G9S>g5>TKNCZr=ZHc)ohK!xir{{W?Au2h)LQ`^6sSjF zcS0`MXB8dNtD?MH$;nBJ^#u)6a&!12@fPKGO-}7c>c4jPc+(*y@)tTosxgXY9E)X% z>h?$9_gX6879H3hmsq0wc*@^mgl>v5fTNp!pAI);d~zE+IZhsX<*Ou0fuD+Zd#ys=YAjU?yfdzK43J&@GOj2QC&V` z!AlD32d{txI{-F4@MHDugedZ^z1F!Z4PS%5#7;l&Tmr;)&Cdc{6Wvf$6Btdn%EB02 zPoG{LgkO{P_6UvxWoLx(br^C3z*ff(@`g~KXsf?!h5|AU5{HNt&UQPWIudB0$l;6- zo)T(&3epZ&<#smVJJHQBw|`r4=sA=B%MbIH3gQ~N0gc*fT>C( zMwGr{H@32@|L;L0rH`kg+$U$t&#vsR=L z+kA^5a=*Om2m{GJQd0<|p~H%aub!XLg*2%_vP_kZY4_eK>QDx=DZ()QcA`WzOO@}7BG^Z7k;%?1O>15d zrNlTMMedOyXuHw0Q)(HkOeSvnegq?e^ILR2RnXBA1OFUaik){w>rkc(@9y|?RFXV(GA~I^CE+-PKS~c+ z*b4@Di0>bi-=&5i76TTu%9pn@F)7$CwyR|p=ya$p{?H7A@hqD|Oci&{B}d&{P{e6w z4vJEN;>-53OARb}-*wf0W3KtR zyaTcD)SdfBSU2i0n+eZ(n|r6KMA71(8&HD9)orH#xWX}UEKuWYR2R&{e?NZeyuZY_ zr4}gGu+>Ll&+^R@YK4ft#f`B)7492{REz1;qS{TT5W^JhyoaSNUM!B&fy z;pMX;$m2YdOBuWta*fFC_`vUC!_WLwF2EZ|*>+aB!8egw|2P6oHey|cU5DTWaQl8; zfrSwB7?>2|_5HHOd?V)BpSr>B`&A7#_mcoMy@ILxbKuWbZ!^E2 z1z{KaQTL|``M>-Ao7Eb^zW0+;L(XG>95#rZ1|CNo+bGbVszquOO$-^`#)jjKjGv&l zwoj?U>v^}RO8MOL`ZgQzuEXob^mddHGPS&2TO+Q+&(X#2?#R`~U!TLnhtG+)!d^X2 z(Dt;9i1tomy^2vMisd1RMK9iWLgUOIJ#vf;Pclkr^@Id)o!@!Q>u;6LetsHz`~K1y z_b}=BsA;>r;kUjRNW0}vIB!wi2taEOZFSH%f^Lp3+k|crjQkcD%AdZy`gPl%!AOwJ zz13xB2ss7!mA%gFf?J8?R8(hpeH*r)6=~%%7QKIdO8CMwJxG)pzg?Vt4NwisDy(z5 zmBNaD3N!~Bu7yt$C1N|Wjx58H`q#=bbZdWgEHab#na$3;O8_|@Gpy|z-+QSfusqaQ zAHE8}R~G2;*RHg=Er8bbOttT`z$?F`Dr(9DCg8&x{uT3T9f=>o{3r7%^rjnKhM~`* zRXz1q&5S(MEk>jF4;t_5-r*_ccIU@l#yw*YQwvXjmYOY=SQ(%xVG72uD6-^2IdP#Q$OX<{Aj&jDO& zZjbo^DFN}koGmmJsd(Fs9+i2c&|EqVRMpwWAKd9$JwXhW5tWGZOJ~3w3NpbsC)FZ? zus7O0?XI^+XQJo4aG0JLKv3J-TG1n;V8!NTaG&WZ8HiGL*?6jOeY?6ABofdh%Mn>j zK@^7O1k26{bLi>4N50)~1&-DrzuIo)kVxY_$V9VlR+fE2@io)=D z=vrB5=?Sen>jp>sK9YkvcZ-A}(I)R8M~IyPeQs1nMGoW7zC|L^R}=g}ZAZ-7R>OLB zk<}m2qV!#QvtZUh8!{i^rdG2oh?*8CK@OH^>b6`2&|#OM;}+s+jlsy;cKZe&%LcGe zqXpV-z$8M;dXds^^R~6<1`cCGe}y%toNru zx1+3&n$GsFDmN&^J#CpVf$)x zOlS)Q4hQ^lP<7pz6g@3+d41npE?O4E2R>9yGH{sb98HGG;@slZHZrfEP%;4 zD)ql;Scr%iYLb0vI0c!#^%{4IAch-Qa((ago+0A~ksqH}Q=n)Ul~7qq2eXZ7tXxn1 zbx5v%8MeA#Z@v~=_`O{pk2?0-q>n&AbRQD>s0B%TIQVJF>K5PuMGAKPGz*f0Amf;v z{E^J1xlwwJ_s*?rOn5pRyW;zbb<;E@iNP@2!QLo6k-pD6ml5B1UHIRgcCKPR4l!jDEEppen4J!$=?ZuqP($PioJQ$riTdzIX)G`nad4)^@mpd0L=o2#6d{> zZldr40U;Ka9^^T4l)`pqVYA@;v8WW3^ZhPi=X|#JBLO0P7FMpPp#wzkZB(9)r6cw6oja=%XhNssl~yb=%(_y6>T5$jXw#3xdF~rw(;a_X=0}v%7lOCgPsosoJYcG{FUnN+R7&J zTJT8r1xq5c?3U0EQd!f-*T`7U>2%|2@pt4qs-W!qolK8o1QX@x$0co{-*2Zqs=Wvv zl^$sd16E$Yob!u z*JdbU9}mO2lwZdrwxQl!PMxieZXGQ3P$JiZ&o_EYx-1L_QqxbJ|yS_UE9nvuX} zyGoLBjDV;Z3kc>Ch5r-T3RV5|HMj_Q{;^5h-!A933I$70j9x+`gPKYGk+9C+W53AR zy)4(j(qsGhSMJx~qYV}rgbN50)zc`cQ4BeJRT~bK*dgCky=)K=Nw?I^L5{%+odn)0 z$yElO;eM|EH2+B)7+x6`M#J%h?RyC_&?Gd*y%_{Grh$|dxOHZ#ORa`&Q$qyS0t>Md8gvnte zEdl%UlWDMDlOze!RwweTUk?KsdlyciJDWZhyiA1Bta86Y#x_p1L`tC3*6Qd5we~Nh z@)8G|Kh39q4F+K^$_)CC(Bz3;Qbd3B({j<0S#lhw9;ZD#vi#u{F_VlE&Yf_X>Sz#p zI0nH(5?h%VOdM5z+h9&D-51GIi(dJmI=k%ltaE z|BLE|iuX&`N?W2H>{|pfzevo~Y)u$kZt+kh_+}BzJz6w~$GKx+=lk+zH(_)+VR(DP z$M)@|d$Qa80X>7q-ErIN?&ZsC*!v)|$&Tzx1&)kZxVK;dOYEK_=2e?TUkr!(FFc&xrTm1Kh18gLPh+I!7D^GRH%o>g zr7U1s*);7{;9J(oA7cTj)78jMt4Jy!wIU%mu~FU$W6@Jk)Y1=;4)|1isaQBG=YIPP zKdWH_N^@t|ty=&C#QE1>)OwRdr3H^vrFpyDd*shv-RGB3d*!7;Y#OCMK=O1=_K6yM zEAFTmQS^paPV=Mb$I$AKVX)q9!ExGipArFLMd8-!9O~q+d*iFT!}J&}HQu&6;=>tC zZrH_s2muN~EFVHR&cYawB;59WMTevd{(2~exQtMLute4DfX`8`VtMsQKL)?M$e=AE z##2AoWU9#STJhL!cQ``EY$t;vZ2J=A)(bmHUc-J1|M+2TXE&E3mB%Lif-ak-;fl8pdpi|v!A`;8S!aTb)$^Ef)xPFd=9 zc=ykiE3sHPge)U#e0JVss3eHn2$hPaGYU)v@!cSG2&aEQSxX_{OoyttybGyvxGA=? zlD3J#Yne$L(u_`DIGrI0prCOQ5|D zyE9_a0-jd?SgjrJnasu5c}!;S2}B__Z_|@bNATmcq%1d?IAm^#UHt27lpMHMnwJYs z;R7@}H5$j6RH#V>>Vq*2UoRMbU`LFOX__5m2RjpwimF?GzH2VlDCe*7*{LA71z(Hg zhSQj*%u^946bfgFH!x$5F>5Ao^zxutBfYG%AYW{rj_ASdy|tRGZLmn4NSYY0_6PYf$rmi7vrgl6RXJnI4T!^}u0AV30xY^TsxoW#W zQOU4~i&j7E*bv1`*4Ga&&1Q^a@^A+tJDukaGo1;)lFSZ5Ie0^wM_(Q|6wMHO`fk|T>VW3FS8xkL4St5=xXU?Q zipt`dYduI!`C_6sr9f@^QXWD5Y#`WWPBFvOYAXzq=+E=e(4GxQczMH+&qvJ>}r=D>pURXLx(^ttcODFVA z6K2tU1^I^L(aTKS(qw#F*eOuz$a*_%I>37D_$ltzIiC9INb_lLB@?;&+l7o(qgmR)&yWB}e#Hmar zW+yx}x2CHtMIujnJdJIUhNOX{boU)AK`2w4&*|fA&j9mtOI1MX@7du&XZWf9cr8Sa z<8wox!Gh*=nmQKEaw(mWe6<9B=^Bx;r4LgN>U8F#ZHk3*5tMef)=C|%4)B@XCRUjn*$s%~0^zz0fe1vv7Kp8FXUgIN^|0oDWr)c(=R z@m{QyYawz=(M{Nqw4q326aHGXw9_>`jIYic_hsA$n;qVne}J0&(n%I~ z^B+>eEfTLR$Q*(V1e5|dZE&zk`w8Tz!?2%ILgxMF=Nc@Zd0R^}z^I63Xy><0EIu9| z+b+dEG4I>1(z9p6NR-O?6|z*-7;q>$y%MlA8%@hCS{`pED@h4S9o%cb&UFiaI897s zT%`?Mgj|^|ZS0=(nR1kpT(vwi#4#-#86!1ftdU)p@E>;CC`2nh*rr7p`+^nfb3Cgc zxmoO$yNbKx3?@0Fbp^qo`rU=QI;9n7yDC{3l?QK*tR>S)!yXGkNe=UW2juX!?x-wT zzDeBhqBGb#xT!*!SN%(PRFStKg+|1=bFer*bp^Stg%w5?1qzWw1^HknJeQ#OGNyTh zK`_?HBq^4eXC^@@7X(T6GaqocML^RehsPCWNMezEXow`j_*qCp_(3y)31HH5G)4%y z4+Al(^hyDSM?m_px6eNC&SNLIBoaRPo<<^!HF{#vhV)lS3Ii7-cd=Y^Ny4p8PZ9AW z^$HP*0Fy3G?)stH-@Lmk7TLW0Zx^l*Ixozq9E*Po0ke@W0}(fpnf@lTe82MecQaBJ zip3@1yP?R)>wm9jx{B0!53A5rOG5iChBvM(RYQ>Zt5^tCt%yK>Qi!{x+s_^;YU@&% zXRyT1sh7tB2d!g_p7VA`%Z|+dCeEdXAz3O6BM(XN57`gq6Lg!J>_LyW#(>k6(Nq~1 ziIO;emF5_NYhTEhok*@M3rZ~O$6e;235+B6Gi<-PBuAuAztuuCamP`Wqmp_B$Fo0O z3lvc)@C|}8`X_3D?C58-OwVj%dhsWBeU5la{w>XL$jGMJ6sZYl(w*swM)b6Z`320l z_2)gF=7RRH8m84wdui4{f8tJNo=P_cGW z7*9%XKv8j3c1RfO=L#M>ytSJBFh?f&9$cx}m6ZW6oeoI|BvF`Q_SYl6{je2z=A^LF zjDx+p3J&)`YnVk^E>%==!OFD5J+b14+5cU8MzTTD7U)p7hGblarD52g8?jC_&L^t6 z0nyz;8@Z?Qr(v2(d++zjqL!`*&!4p+5jw)cj-r26Va_Yu%$cv7eIj{rlH^m1yo%@s zV6DEJu^e)mU~_EQ8#59yS0fM-HAwU9FQq>AdW^HL8m7}#u}o8t<{GmYeK-+N+ZOSE z{!)^`SUx%^-+81%OMv$+D9=N14?XH2QMCGMHBHDnt-q89v3z1+@0P^9*zr6NO6 z7lTCA+0#O@YU2Rrl9ON@iz~a<6!MeL;GkjnrA1;}j>@r3Q1e^crHafovP)HC7qTcE?-h2| zglcVyULjG1LcUW5R}Z4O*`aJ0sDXiW;}t}YN(=}R?$q4-D!~1q-j|cWc62>k_q%a zxq+N_;F%b*ma(0whx7n|QAp#w@iz&M6FONjUE2t-H@Yr{+D09CjIRe<6Aj~xrMI)T zoC7bn-`~D;J^T%~BlbN}I@=4;%(sE)_Iwa%dVt17>(tAeu=NgOWNZ-~1L3aQ$=n(g zKCSTCpv{V`U(UWwLiZ#PJaiy`fh9@QYuJNx0^8l#42_>2tb)X?2mV7N6VDoOkQhsC ze4$&H#nae23BA>sQcK2t?!7Di@~pb%NQZxT!<|ER;+Df0WlZ(TK(m#)^g!>ipw}f4 zT(ZMTlZcCfV@cAoAkD@&nrXvd3VvMo@b#hOct2V6o%+8yo5V?&p|2% zJ(OvNfyZ@QC76><#zaQXvHZytHOb2uLD>)vGQV0+d4HrXlW&#{v=en`2lPil>02d{ z7#szXTPk%r4W1hed(i5JoaYP&%&j0k2Ix3BPbOKTS7$Q!m@MZ7_=FzgCDd-_H-}Y- z*T;#F9Yqgrv5pBlef4~e#QmgzeLuDOApqlxIL7neIrCzoft|a9)QN^2&g2!bu zKhXGxwdj)3V16ZDd#w0fEynbOvZZ;;JD*|-9s6pRH$wf6|xOyheK+(X!68H zi4>`F*#>h6`mJPE@}ok!>Iq~6c?5!2Mfe-4Jh^OiD`q;kLPz^LgflxYv)mb}%W}cE ze6~=uKyaGF1HD`5X?v9~6 z;a91VXh8Ff+s?4(8I(GUZK>eW^H3bV6Kho}9epXd=3s4^xs%^J`9YwNO~i>CGa^y0 zkd}ayP9Ba)?#D(dDfoBz4JZk&?l1R^Kux^oKUUWM(P&77OhX=btic8Sl6|E?H2HIT zOH|}2zpAZlj*=LxW9Eb$xT{DdGR|7g0P6tXih{AXtOqK@a)tVv*b9ZEoGkpshP=bA zYptqs&gQjj>2;oDz?pc4Q@+uNi+Ah7jsR>ueP8~am0$*;LAry37n*bN#)6De-42G{ z56eN>O7>Ak&gJ`ht;~RKY#%*C2C3svrm8JQ``A(0i1;zG#3o1>9%S)xx!7I0a(}Vz z%C`z8swS8u|3^a@ooe#FSB`WSR0Hou0a{W8W&IDLWY;LSTVDhIG?08M^03Y9mztEB z0qN1bK#bnM(2hSoYpC!KXM4@EPe}}^^&-M(A2QFUz0yb#>`$GJF$`#?l}|e+XJkel zXcsLzURe!r7wVX*5E+$-4VN#*t!1^pR^SbF;JtZdcXjY5uhC(jaIa7{ua#k+VZ9$P zY1bgkF8ygJveW!xt%$?3fCF&VA652yqKY%mA=%txAj3)uAEvrXB|9UQ__HXLFiX-= zK87EuqDp?u3dtH6JbCNtK@a1^6;d~zr*;Qe&BJ+@1`as;>E zw&x~Lhl)RBK+%>Ab=Do)XMu=%>S;IxIXWqUhHHwp{fES%BWz?4^l3D3K#< zolG&MP&cR1L+W!wATl&>YXn)ZnYqcF!ox0xBDL4sEYQs1HSnRW$v%DnLV?Yu%Bxtp zggcTSpki9&-3?wC|DKtj@GMo6fo*A(I}SUstWc=lCPB(rP?-!3{V^fX#JaJjub?I# zc3jwvFYgN`1w9XYlR_M^9S99vE}EyNXC#8;9$74k_2Ad5h&BGi9|+jF?=$WdHX>gB zE1uk^zO_m<2mJ$WAU?>i=n=9EY@ObF>7PJ&NIfq4EQmJH>(@PR?TOM}knJf3#4McP zj8bnhlHB8A(ro-0z@d=SX+Tu!7(zzq0!%F2X|OsaB18-lu2AxJP^p-Tz}0-B!fm0* z94a0)U6#1HdWT>6N`wm+S$GaWO?Vlt7zDwznC9zxX|e9AR69h>B&dVz91S1#z9`!g zh(6UjV>m5(2(ArvduUW_FBy!|VmUVAl8AMn0-U=w)9}59`&@{DjMXZGaJnYaQG=23 zL<<)>5;B4`Ju;}i$R}P0MZM*#8C*PyD9g#ab|B%l*ZrG=)!C#?X9hI7TFT0hAMs22(O&~d|VBmXRcX+ zjsL~%4S8HO@;L$woJ*szljH5Cz(PJXCqXwePAA8gF-}B`S%bS*A`BBdOzm( z0|-quuPf{$pcEcvBM}$R+z~9_foi|!77s?qKKW~eYdNa*Bkc?luMyeC;BYDy^L1d$ zJNAAWd)nEQm};Bn*0_>A)9&(Xg!{s1wjyE8{)&5u(D0AvS)yW>C`m6{i0C%Mv_S~6 z26e7BePwI^KVF&6x%+?QaCE_EX%%)_bF+0byVXBO-WGDF>%GEf2CFNKfcM!84HAbI0jb(r&^t>-{&XjAt{~ytHRx z=on>Z07*TbJb};e$&fc6NYH{yrVsAb`SNx<0Bk zeB?Zpab>9hUkQiY{oP%X?PM($@F!_YWe@O~&M`K8ZyqZy;V`$_@dm1%o;Cr|-HV3^ z7YgiF2kQ~LdH^)n=SNF<7qAkxc|OFoOFB$+HGraR# zh?9WX3&kvD&DJeeL5n}|eYyXbfWwsR3@fMz(`97WPIy7c_J3b7uMXX24uuhEH7uVUD~18W(c6ZZBw9Mq5mF z=^Ooiyul2pQ;WqSmB^ZhS!ChKaJtUplqCr_BLcHjr(~uJhi9B|FFw5+?COp4^~YXQ`n^InwDl5B&z?FwsHw| z%xiQ;Dzb~)7$_p5Yuo*H8JvDCq>^oqA(G7qSLxpY?FViiSQP@5B5gZNMk)>$zqsWJ zQ>*@@xcf#8V%gQ6x=!ysWM<}I<^JH>M>iMq%4e*m_9jl;>85$K>G-o=_=IGzzuB#7dF?w{@w~B)Oz1VI4>c2Ay7$^0 z|EMZK5TLe-Tfmtb(@FtHg^q=7kY$k{7dq<3EMZK0R2Q3^yLqlee)K3V1{pe^JADC7 zQO?*5r_Ip}_aS*ujW~l0>x%p{GRa)2E|#)&;gvc_hvcC-$%-e7okvr zhBf3Oi6IZoK5H9T*>rHZtcR zk4O-@1QzJ65-dNh04qkIH6bMJ!s{j22Z17DMm;mgKMNF?=9!|wtb40A@g5M5^jh_# zTC?pKMR5~`LR4M)#Rl}Jc?4T`nVr3Sg8uv7Sm7DE0X^zPVns=Q@q&5kjIdU1QI!d^ zl{^za9ZiB84g0?jf+~GyK;HI$xgpbhwLOq{M${B_`-edGnS_@_T{P_h)%*I(AwV$O zL;@Zep|D@A&Axa$OWfkPP!0-5`YR#rBgrwDIbAHrIg z4Me7%^)oi=>M`V1t`H*Hj+yVQ23L;%S9Kror?eQ<>P9u6*i=5=N~WtCoa#g zGH;%rjarF1SyM%FzU4l7-IyHHryUKMkpcooKIF+XWuh5ppiEzt#u0S$L@E4 ztBOqV=EtUgl>t@GMe-X@s&a{$b~8DWj@6Kx?+P2Y)gU6z7V6*^`^K2)K$}b`05iv) z90qN-L9jN->RO(%gC?uje}pTqO~I*b<_|O#aCBUvp@p7;d)K-D6=6BOr~d10*dKPp z0o%0K2(_sUZLZ8qr;^ea?L;^&XI&eM4zUst_Y~VK6s@;$kll#pDs|0qZPSA)%%;)L z&C|PV%iT(zWdrQ)NMqH&x_o-1zJaeZhQd}=mMd8QguG@ySK@Y9z3M_y-EnWb5`?sb zWSe`$vv0YHtiaXS^ykhhbH`hmec53PB)EF*p=RC&P1OCay+0OPU37J|{4K9-i6Rih zdg5OuR`DAIj_g*PYT4^xqp+?)7eZr4u036`o%vyn(mIcNO}3N?8B3CPDaR~}Aw6Fu0(ad_LZX|Lqt5r#%F_NB`hgQsq%2H&=KoAW#AyqX6IdDa?S)TZZ zT`~?#Wy12XY-K@rO+|+3!?8|zreJTJ*%hPX7Nq*%rb8MfP)rObyuoY+4nH724U2nT zAaq}NIN>C9oqMQ>QNaM30WLDfQ{9rO;}6~6ZOQug+}?mhd zAq2UG1JY=R<ES592V%i&Jm9_NZ!9>S@~uxv42P)IB$1Odd*Qo z$>KytP}0koWb80;bLvBH!F0o!H_gB>l+ydxNaL)7D5+|I(tYOx58JwelIeA0w%q}5 z?FZYej-Vjm=uYqfbI3BRryu|wMnXkRivpBb%=@mThGJbg{Do}PCZ*(=H!AnpZ_-=S;t9O_ zy6Y5gy>|HwOOhu}benK#IigZ)XML9l11Og`8`eyUPIzWn7Wznze;O%$CVVJKI|kSb z(~X~$)@7qrRb%#scu1V!)=heO++LjolX&K3Fy%Ep(+t|1r<0P}!x959_KJ|mA-uW> z%g`GVo-35~L{-i&nxT>}4E%2g!;#jK`@@8xf%PXC4W-d~BaQ;?iWZP@Itp)#2Ox8p za$yBC5LDR8c3CBC3^T|{1LA&g*vMi9kCBOcu3%Bu8L zx|EmJW#mMZ=fuDImc7LLcC<_ZOGw(;Z5XxzAF!BYQgg`NF}2FZ!p!NW(N0w6Zg9tN z`K$FVUH$%}%&nnrId1agtH;o6ZbamVek zz>B+kb)mlIg3>0Cc7P_}Al^t5XfdR<#?EumK|j@=cD6#}<&vNYpR`4JK%w{$LT+W# zK#$(bvOH7ew2f_-T&=Zl-V=_yV=6z6)w?ebK@Dx70Q~C&%++*laHKj z^q_H#E#)!+^JsuDI0?3;_96fEB)AcqyD+Bow#Q^ZRU`LZqn8}&4Yzc`(pl~6`mWY) zOC|1D?)@yfu`Pb3m-0%nyYbmchGNcNjk=gOti7``_&cV zLqvgxQaeG()%8TdCQ5bi)OM?mQVE2T*$Z(#rbaY@nZrVnCiBciReK=<=srK%U!LVX z)g`GFW);7d*4t|hN4r}?*tt#@IL!1t?$C-3!u?(P0?*n}whH>k_7QXXJp+L|j)V64tXG8*&l&hYd8 zJot*jrkc{Ktq1;uVr0NaJ1JQkDDv({v0Joy0+b)M#t5M@ zao=eiq4E*Pe!FKJ|Sg7v0zGcHql1f3=RSqI&+Np_u1EIZ3mS9T!~t*>}VKuEkw!IU~h?^ zqkWS2ZC=^^E7AcCpo50+%6@N0o39r$czRn$LZ~lSS;|mWi+00eqNW66>#c}hU5rLS z@7v^*AK`@yT!nCOnZLd$FnAR8#|V{zY7}(=h#u=R((N_gT%${$#ug&tLOjLEAfC-DodXntV{URz;zH8^Rru-VqX&+|BmdHtW_JY;O@M z@6dZdTEK?k(w*_U4CPbkMFaL=Bkd5@g6rJ`y~h^7c>x+Q4?w@g66g3ios&UC+Ua(+ zq5@sSCSmTruitzSxuJ6Pjny^>uBD^Wb(c?|&E<9ujmNBR_FYa7h?as?IM{#(Rymuw z!k)-64#&Y;qf%h*u0t%0Z}Zl#)Mp`ImSBC(ZR`1obvA^|e8ZFs>c$(FI5kt5HciOH z@=e*#LzlJnLHn#5akQs~#!au(TNW@X)#8-t*QnM$D*#qYD*4Bz7OR;QUAl+P89oic zYOorW&8Vvi2=(mK#x)e4bf}@YLG;8YphaOxC)&^2OEt|yleWqgPkU&kN)Ro1(c%#; z-hakZTD(%P#x0v>kDkJW9v!MvT;r$QuC-tpC_Td(yT`6O6cqm*mUhJ%Z!@uYaxUo* z*g-B_tyqMqneoK2mgYkqWfq4Gv8Hx#Qd?JL%{ ztYhv<<^H`X&^Wpx`;k?2bp?G3Glk$wMxvaEYsG{tR{pRwL(S(hw00vkejm_-EA|_) z066ncWO0)p7SP?Hzz7^9c7AQQL;VRf6l?;8QWoBoH&Z0h@>bh+qYWI_J(K*6I zXeB^{|BP91{9x6Ro16qornF_vKe)b|1y{8nojD;5rqNRpR_zG{Pw4Z81h&#y*x;NT zoaO=?+hjerGCJyeIZ&R=8<<7B^4-9wASl;&UMSA>0F*|o?VYELZXHrqbpB2F%kfnz zn_Lt13g08o@s8Qx>P0l_Z}FjN@*4H9ZfWQzFx!o&zUXd{Sfr$qsZ8)ShsJ8UpxYqG z$I2m{_pvTrO{w$x^P_Fx7oPVt3-!FhQa7ZA@Dz1I|I8U_V%sI#L4sILd32;^DLtUn`ve$nWS+0^$I*qnYlaD}q&l6*ge|^K?rK+_*@Pf~d$@rivarT%0K?H|UuO1W%?%@` z5FrwJs)#Xe-VJ2Cm%-fV)n$*xtTsBIX}%5|jUAJm3rn2#i<>>k{(u^d54C^e#Xw|f zt5;pDw@2HkzqeL9xbm+VkpEoc^Rm?4zlEKu+UdIVazpfoicVv1chbAj(L%b7^-%l$ z0+wN(ZY$<4KKmHGfRHyciD_0U_cB?xcUAYgbw9u*;?GPXJwz?%;X7&N9=9Pwn5jgT zf^jz(l}9ZWbK;KlpjCpyb#2~NH@C|29;#bKJF>Namd(Y#e00ocaZ)bB-8}uucQAbK zYb`5O*!5cwnZ`^)zq!`*5?4vNy6th5+Era7GrSfs7xf$rf5aJTw0D1yn>(3>NV8%W zOnhrP7e|qL7^zw}Ebq9aN!eoS+;LNONGT`;u32@cQ{JJqr-mqrsyp^r*Y0(k*@c7;rbLQPYqcM9xv)rsGKNEWw#s7=45k1%jaysCtJ z${iv*W@_a;`Ve(xT&lIy+$L6{$#Yrd)rlA%@SaF#y)cz9CE}wIR~^8V9#bbc>^_hk zkpI(Y{whTY6@B4%F%2N^BmhAd$f7Vh<8^CfsaVbi1!B0aL+<^_^bgR-$d)TNr3SJ;iSra%Hs3852$RE%cXoWYi1=v2 z>{e%9cs)+l>maQ3WtD+Ifn%}K@gZw{gL`h*O+WPepVgKX_4WFPnvkk_op$-;A(GtD zyh(R-3mQSNxKbWt&P;~(l`&2e_pvtHdP{}2ch#k(Nn=)IYS#67Oe1i+8;@Gm^*V%g zcf_KGjrAk@R17V%h0BQBY`awvR0CnZG(f%$jZ9=TX9YBEBSa~GC3UUsr{B@P1+yB+ z1&4zJG=5nAo-;X@RP&zUu35=8H0 zUaC<|cVN!GetdWTy?u?<3Kbm5v9!|_JQ;TZra`#y(>X>LNJ`mj>1N%jQw5G`rGG5;(R`KJBey*~tQr+Jl*9Zi4YGj}Df?u&%)F z_AX27h)^>(l$4Ahlc`(;l9A<^8gE4YfDW1DC6xO;IIubGxmi|uKxH;0LRlSo zGVYOJ+6@+6ZU1oF{bY4<0M(agsWdg(X*@wUYc@ezA;Z<`M$nQhYwIqL(P5^*E`ya? znJ*Q+_E{W%Y{hdi6U?YNUARtwG84~cN~tdB^+FV(LN3*yt(hD)pXO^~)gzhimU9mw zRzA7m*W>#NEII+vvrT-nX$VMXoe;w@>N1=ojX8>NV=r!EHXZTsy0vC_8I@H2LNcT^ z)TXOufj0PdiuFD2RRlLDo*&OIn zlQ3+geCz>W`>w1TZkF;8y?v%Y8u}jJeg-;lF!E1AgPnJ^*WaJt(U1*@6LBR4#q``0hMIi5U3`Rr>1~(s;ID)v# zg#DTdH_$+A$&@k~a;-z=ildSRnTa#K*FeUP@0Wker(DTyAY3N6Tf(*`rcU7iobP%K zMHFl0Q~zq_=!223`N!fQ!v>!C8aAEJ)PUQS zRRek8k|;yYcVdY}@6`{qPTzNb#m5BY8K)&-)yS-VBYQ%#0R2s?LHPXjG|%+Hdt)rW z@y8*uf9bX|<6==$0>!H?0IDZ3FM(b%N2NNs)DIM@r~3HlI>L5Z0I zhv~w&K4r)>k4~giuB__MAqO3hbq=F%?zBa9l&Qdbm8W|RyB5!yX6(Av5Y<{X-jcC^ zEu+x-hV&Fp#W~lR5khME^82jC+N9tknrq@YX;uU-gl8dTjHN`sNHK`D`ktC2_l_Z| zRP%MH7B5H*QZ`xfTrpRS-amvGX3I9)LPeWC`BaZu%Hp`?E ziHmzfc=q#^HcBgq{^#ZV(dNI~99vt0=2d?@1swvODWt$B3b!+go4`DshF2sAU$iEn zb@DaAkLJU><`Ol+fgV~bs!C0+`V(m4g#ty+(MN+m)O%$w$mFv8R~bxMXtQH2*3(EOmA0!>2>dsBEn=BUJ{|>=$&!>}v!r8+0@|d#TC}cO$JfFF(az)G!6R&XZ9g z76B}nR<`~xnFMtFjq#oCWW`d&3nOyK+lv_#t%6@X!Xlj)y#Cv$fAdJA603z8{n>gn{*E2ewiz#XQX;;KLZRaJ<)p+8{D5Gw}|MyxHq=i7j- z?!qQAc3NDVS@oQhW`gh=;7X)ZbbeaV#+Nd}1yqVl@uRYG$k%tmPUwg`A5^@HGHx@{ z=^9SFdn`!hZf~lyNZ%Nq7ZQ_bTq5rGdc~yqPAmn!;av1n(xO~ZsImLnPI6YuE~rY& zQTwHWl_tF|Xs*_F`U$ht-@gV^c1J?w(s7R?<|a*3ECUh2zs={?p-^yN{_3*GKCleL*klt+PbKo!>RyEa0&Mq+lX0H+p6LU{7_ z`UDiHQC4S_jKCUtkH61*WcD1@MBzn1NS%aq55^^F7&$UwB^q^}$)UuG9u#4-NL^{pztc5g*FH%G*T_$Dk`k{xXrfLi zWY0cmTg7LXyFnIXm8r3-z)ccG%j0OEu3atdR4&7_U%jl{QFnq)R&MjOvEu~FUXMoM zcYbZA09{0G+Y0@1sw_^SWCUO+bw4>pKAU!R%Is%Cc)w`#FliQY(m4c!sS6J0DncNe z*li{^q%h%k*J^keb6B3%(M~0r3mjL>!pwelus>(P zw08`6o3GW>m!PX@RYcfg@i;1!Rxf`@?@sb=gVPVmu^hS8;*#w`eTUi(b;MX~6*cNA zh8F>|E;lIQeeQ$Mo_`!W!a#M zi7~KdI!5oVnPJH8*};@&bg88a3eBfc+#TUAsO^M8spPO}od{?JE8rY=)zggt!7#Tx z3pWX9_kc}Rdg2N}8RMyh#hYNT955)yvn*U$v=)|JC?O`hLrGugc1b_V-aEVVF1&;e z$pCn`7UlrDq$p>jXS59|h^XO}MBO}Ul31t4XlgngV-oDrrCd?9W?AE^S6Jtx33D~X z`{H93{`@8^Q??y+VSvSk&>8iTBQau5V8GAO-y6GjT$1}OS#3mh_=`lv%8cW$ zK0>emr}_2Q{&6S{H2%nH`=$>GXWo$FI+x>fR}MDzsJqZSn{@Je219YH^GM11(aal!8R@PO0ZS3l$-!a z{KdA;ox%HS`pDCnNj3jB!nOaSL&mr5$BN&VzrOqX--e&F{23>|*}tp>zDbd)o4}Sc zz9|&&5$=0pzt?7ZIP&chzXkB0zSaM8fZ13E>9M*A5MLgzmuc2_I06BmmtxlUhyuRv zBhGoF#l~rm!Rv>>d-_BR2Eo_cRcPpfr`rwOcbyMU2ETx5-|oLaGrnx5^&x?snL!yJ zH+6lOw8uO-%-2U=o?SH$*KJt-qPvqVoPP%E|rQv->Gx#h!!sQhh%;|cu? zyoUt)KV*IZUap_;-4n{}3s`=FJOJ}Fh+3kbXvKtAz~$1z4WF}tk(*b<%wm~{F77y0 zr@1}=<`*I@`k4MJ1Cy;{J0*Hd&TPw_fJCv_!PKQ?CL1ACl$?X>*wQ{Y{rlh}uqUic zc^y7}K7PKo1NN||1(b#Q;I0Sm%^H=70$~TO4HqY< zZeIKH`wN~fo07qQz$Z)yc+En;RuaX`AGgvCV+P@GxgG?iM#&t>7^RL83>XEJu=ouM zP4gW9Y+wO@4&=7ySpNL&u2fyJfVX7rQsp&Ca*8IKc$>NWOG**RMlF z)KItdn+92~TiFN&4b2TnZa<*D3eqQE@m{8^K5iv$f|1wmma5WrzDW*1e`bB68ZI7B zJqkF_TTMZFvAVM*p6TjMPl_CUk$RjRu?vre{NLW`v)=rz6nn8y&WgV&@w1z5NEjF~ z*J@TVlJQzu$~p!$wY@NB=Pb8X9)nl`*hUuvt*m9h+|}9@72$|gXN0P;T&1yPdRQNW z&&|+^b3qN3X>Hy+m1)@)hcg|JDs_jGzgXSjQ;dfzGAyo8tFdMJ8!l!(gA-#)nLEn$ z6m0(8R2xe)`47@$nC7bWT;`RFSyu)9S^@}FX$$3|30!UGWYcEN#E89zi~M_fslNOD zEK}?PcX5uS$UH4TE zF>`JoAfy~a>?|{)2dc(uOq)S=h1)o3%EThN!6peVBEH1$xDs$E9w+TEpBt2d!ztY{ z#0NBLIjm_CwF+`!K~Z5a`;ubiQUy$njge>8^DG0a8i1U+MWB?>)9gEg)^Q~Ak_c|a zC`Et1qW&5!;bke<8{{O%U9Dw8`b_&^A$gFdB23AikoB<3Yu*H^*?2y z+PbS6!GxKKmckC3$kOIMI$>8b)@R(I9*=JSArKA&zpyDy1INFL$#0-APdC%BcQ_7T zwts=h{oX)O;B>>Bvq5#gn*D)#`Z-8;1pF-=6b(Y|LuZo4m9_v!_(ac0o5yo1u=&IA zGcW?r3f)S&*wd;CVO_}ft*M6{=_zFx^j&$$+ZQSJ9ok^XylXZXh1uK1^$Z;lm#&?I>EV?wp^uZ6(!wHv@2<*&4D^4D3b*7U(4OA5-bR1dX74&G|D1muz@v z@|E;zV?|Nz@Vcz=4-_oH`7?q1?0+s(a`czb;Y>b zrYmGhq93+Zn7%UmuTFJUMPK-mZ%ar%pqsLR$F|LojizBkkh|*iBZi_<{*M@{#STZj^0H@@_)!Xn*Mj#ChSNmadF!ux$OFD+BGLdYEL_ekD^xT%b<$FTkR z78{P9=~GG>e9=Y7)Z~E}D~08MG)H?RywMnL?18o7w;91I@NrZxe&%S=flnE8Iyz7k zlXyysFZlR*pWE%%LQ{U_%VAsBRvqDXTe?aJVSPOh$=f(1-*J7|&$z!K3$6{bTn$qv z{47ph|8P_&`1A!#B);gg1ed;6@5rXt0(RSJdhU}U(X|F+cq)w)Tw5;w+I33RF9*ff zmHJh5_|&X-TZ{}Z>GufJnEKmoV14UIIPeSaV~0F_A0tSJV=jd%+C7JNkSj_Io5lKm zacv*!(S~y4Crya_$D71U_FHwKRS6kXe9}xsU#i03$R(Lk7Uqh|!hn0%_|^Ly*sJ5v zN%-H=?vKxBDB@eOgu}=0WdYL-dXWNy@(EhJcSBML(-^)%QoGGSat0~|C$7eMyM}Y~mk%f=&i)9ECXxk*5&c!a>gQDuo)HHkEy0Q4aW8MTe&2!s z?_`M$0N=ygr~Tmz!sRA^!?)F^06`9aSgPjTw~x!)LEp}ITkQAp-8ZU?k;D6kYrAjM zsr}`pmL7d@vIT$d&H)#vC%k;#``&>TUllwv>5D5O#cvUfBfU|@!`<``F(SV>%;R7V)I|ypC2UF7q_1i ze-8N3`25#C$nELA78Qh}oprAN@1_5GdbJztadY{>_UZ-`Di513AHIUi%O&H={&+B% z&oIrP|M###%6XJ7gxh(JR>+K*3;7cckWSOCkIq7XVk;9FZ^msEE`zo_HR)`ga>rTr zu|q89im7!!`$#S`NiGj5eYT!>qsPnd0X*+aCF7ngu>*&VX=!f2G9hDFo-GJ^Tlcua zSQ@neMK6txO{VR(qs@VIfh9Y``z-m6sl%jG;7N3!9-;YDM!9v(DK7ze6Pf*P6lN4h zVWx`DG6@+^H;c~6FPxGdO0>jOu$JEaE`$ArzktLr&!mgn9di zj<1z5oXsr7V|3O5@8~LG&PrNn`FaJ;GENW2OmZAUq$>z7X6ul zI8zi%-C_6w)s~lHQk@yW@~WGmvR>bmQ3in~GwkMS`|WI92H9`0uIb~+$JU(SDZE8P zZOS;&552*5=Naivt`BhHQ9WGmNqBR`CCEetNrnq-J5H+2>XMf`;2~%PFv2DpY>!Dn zcwiw(ynor6(TE|$ttEH?t--b+PgI40LLtyE#lND`12gy#xf{GUvG1hka10Z)pTw-j zIC{hCCkSb61Ql{e8E@=Cztw$R*iH9B0dG48VwyT0m{QURyuNCAU-I==sFLSoGS*2D z@CXdy99{<&qxJTkrsie~K-GwzT+R~uy?;+fAhilxTau$l-~*Y;0wH};arc37(LI^$ z9{&Vw7ZYQ!4`{V@;XnvGNCwm~FA^k(18Y!J(x3qX0V3nwldq<&N)q)VnvDQUx#+OKey|aQbycc#xLT&J^XN!klTCdg; zCj{mucO_MJynUJ@LMX+|Sb19;QPzVD3ip*5)2h|5_+xH`W%NpMWR>a# zq3OjKt6f(8OsP_SCiIjd7zFjSa02_cYCwoeIE(W$7?HE@M3j)`{TRPF!d$Pw8-Y7R ztn)K)_g;3EL;+Ik62DgFjq?p{VbO3DVb<>+3mSR)0Z@z#5h$uLj_qSsi;!`W2fxKt zdnNd?FqZqyULp%mOU>8{o6g9%B>~~B!9ML{$$15UxAOGgc_oBl!ZbobMz$q8)cwmw&gZ2m_8J-^l!4$7Va*h9 za@CQ6@vgli%LRwM-7aEYPhvj>t+xzYVhC`uz3M0#qRLK&M(6z5lJibqq1xcBG7OBS zl@VEC;s_sj#`xrL_Rei`Cg#3()ODHxGtf+0Haj)bp*%-$8F*Wq0?gL^7o?#Jz@S3l z3nUZ#SUS-A>C!uKb>ZyTcX9`i=pzoYV}*L&RC(gdhVjx7*?|IAu>Ppgc7_RhjH7H3 zTn>_YiD@EfpvgA9R5E(5GfXQ`MZ{Em4zp@pC(#Pfup1cyt>H+u$p5w6Lj((IWc0gD z(mfuBZOsq2AF^D0MSx6~s)rB)Gc-AC2(qNQbR>$&BoJ-DfZjnQYeE~J)1l(3Rn_yl zdc0=VK+%@Fwo0yI-1{W2GM{9dd01mTATaaoA}`q$8BczCxOZLs(DqoJmKW+4KFyYE zH#^{ZoB&Jbz(@Y3Dx;wadVoTM!&@eVJ||*sC?0O!u6z(aCosJN?_q2rCfnT5N{_Kg ze$+dCP8%ibW zFk2SNCl+mXfUL2FL>|yy#9eG|C#Dl94>{TjU`TmC%M++ZlhjrA-oc=$vI8wl8ybhs zrhf%zH!k^^Mm7yxs-6}oEGuiBSJh|S4cMQP5`!uzd(4Y31n6B1u=>PJRugS}LR8mu zA75eV9S6Q2(*BaIB_aRGr`Hv&4?W8=(S4jI5xoD^W!)%5;LooLG@$df} z7)@Nrfb_mGo@3|c7Boop#5RfVX5jC60AUb6CxfxI@`iril4TqQ6OTSp>a32eW;a)) zFZMGE)oiW7WrXgEK^CIQg7Ew6QVV{+xog)6$?J39h6xxv_uKLu{r>VS^vNmzYP@HbmLdE;Rju%0#Uzy|`g$W{?Q_ z^w9inmt(W6X9+^M^_I}Kd->k-zhLL5`&OwMh2>rTQkwbtzt@_QGXR{rn(E}Me`@ds zU(daHUaf`)gNNxcZC$Ft>kY3N{kO%`j8eM*H)A7qp)Za;h!&1^EZud#@sl@09fDnE zL9f9k77FDHo;-NPKnMUaWADZrnOWk9G5>H%Xzdcp%oFen;pi4=tVy&@v$5q@)woEY zI0i3EKo9RYG0iN^!P_fgVtWc`Vh~~|Fp2WN(ukL4v#eaxHcgVIgbTCTfvZ%wM1`xc z`hf)0I`d|Cvhiw;4iWP~-?S`!B8(ef$4Xm5E;Q~leJ|>Mtq(p)rCbP?J%)M)k_`KC z$nvB$IZ=@2U{D2Hs37@^A*npYFobd zp2F0$gwFIYjysbX_e|46b)gpA`? z3Cf+OHXREW4Wx`&7rTw407clQ-bq=)KIKLx>{0n-2RoBIB7({i*cEgccz$kPmgEUW zA;q-i>YK(igKHOKI=UPx* zYDeOLzCm&50kB+7MWb!QYSyh~qCUOI`^>+^+_NRSB=Mu-%I$iZZnz-`9#54jfr|(5 zP*NU>Yqf_VMv-`OTE=wq9$~$E!?i1u%1T&GU22-?R$yx9|meyHzA8hsuVOzDXv9xnPwcNn2IPU<5xN@sFbgpPGmJ zcrmUox~!V10{L@oDr%6wpXAY*&zkwe$JB*W497HEcQX#>pQ98fx-G$j|AN%-)L`)V zH;#{g^Ok+F2`;H=;uQYe(SFd}5D9x{(V^u`popfko)A(i@0=AR0Nt&B4x>GG(M7pGJ&kF^G&v3AjyX5h3ay zaqn1->;$L!K8+$M!gWgM$!}DCwZ`{=^}w&dGO4wX>zXY3g&Y?qY8^p2>ye=FB%{$w z;bKsdEHwV3P@|bqY#|;dq_QLfZ?Cr{rM|&$Pe%hY-HR8}K9SN!TwIEVEyvYV|LHkL zQ%SMBELCj;Qc#W!(cMAe1zhLxfIB}fr7@J^V3o8SfW|Hk%sGnF!C~$H0^JgS}0RoU-+T$_GeAP z07T&LV77o*n&<)y$KPUwe~irF@21lZavcT|Oc#X^oa9Fb5_WrneHPMvP>vkiT5Xd5 zxfKOLMY}Tb#3L-i?@41SMmxC=xR!6te2i#9Lk9~iauED}i;SYg^-mO!W<1I}Ux30Z z3Zlwto9yBgcRbsH=gGs@*^r3Vud<4<`njL903FyqYu%u?uw7c&+y^a!b}!w9H{rE} zC)^bi6vPL~Ar(y_B)O6p_Lo?FI1!Xg+VF-ISQwGqR3;PF0 zv>6bax5{TU_4ORPO{CB$yzQ(w^9*&;h|`*oNGUwcb=9T|rGIio`0!;gS~O0%N}C(_ zA*z+TadlgbDf#;Q zNXi@%ilxCRyVy$TXAI+h(n=;W#_-qsT$2oqW*Q~n+hO>b4sE3b?f;1`=G8@_FvIrf zDWMH8adTCo(m4I)G@myr<%97{SUK`2za^pZtpoviz9uChp~aS%Q0aa8kOUs>lSNYE zQ&J+Qxzd4jHj1hiSDXrUKHP&m3po2ZlkIVUDMCTfb5BlX8nHowot|3G6mvB7Re+sf z^_#!Wzgt%Q@GBTtKJ^bkevGI;3NSi2L_bRQD9o46Zf4U?@4f4)y(&irDsd4{Vl}2$ zFTac70uZCD7c#nZaDC-FgD;>h7_HHb?Uge)8P;>i7)G?PV$h=2$-94olE%RQk}=2M z#g${z#dqT5=!v+5zE96Y6OUN#MMjOuM)$yM9(wP<26~c!8GtSAKS>XU6P1|*S?%4e z7~svy%BKQDYzIFTtEDhW*o_&`cmfJTo!h+jPL#ixZ(*PkCZf0(K@%L$mi zUx}>pNMuX#Lw17_JA41eVC?$j^|#6AZHz3pUEkwYSt?4$Ebuj7bvEydhFSPaE5^$2 z`WtMkrLhXibvqm!G3ze};DK(a7!sboV78t~4chqo-8FnZ_b{ygKOEGBW!-M3*jKBt z>+z5HI)=xXgLx@dSZkq=PZy@R?Gp{4hOoV@)9`*QA1wplt&@9U@{>s@vg(l_2V>so z!9a%ri;h^_r#anbR&vOk>R9^^4-aF-66jy=OUWY-3|E?O&kql`pYQPmI{yQy3GEh- z7<>+MU&8)=>|qT9hc6JN5{F~`Z=i;YMf3ig_VIjSK)~8>971f{*+ z0pfd5^$lnPV7u%O{o}-=N3+*49mvvIFO*SICp-fu_#+{)#58w1zjkj=Z!5qd4XPvP z&Nff~n^7?`KiiRy(WZDZoYOmL24aK->I9_~WftLpRN^@d|L`eGI{yKNxcKXD3mqqivbbmUk*UuT z*v+Cuq@y2b=#*e(&|kycmc@h1#Q?^>TRc_I)4o@};@P z38bQXox?UH&Wyg+YAF{M&?2&lcxE%1J+~LtE9tds)a%W22Z+HlQL% z)X~z_rE1ILu43w6XyZ+9?$$OkgH}r-%z9CqgFOwvCUg5>0&JW%%^ImqT^c|VsV@nY zyBk$)@UwBu;{yksPb1q^I>M)Y)FbqU_Br8~-Nr{AS0PsByCWQdAC4!?&i&;Bib~<< zQhjh9G5kHh-UX#dA*!Ca_rs@-U1@T&#)bKRZo_- z2GIhwlsdcNjQYLz`h^C&;q!{cZsI%CB`kM_K>m|Jy6zgA#S(&m3R^%EhG`3LcB z-f!;vcMt~znE>C$Vt8l%oa=Q;{lMrNZs4nC zwCLZ4ksVKyhK%x~*7P>+EIuR5Tx`KjfHM8Yl9lG%oYx9r(Sfr*l#1h+4|@}edaKWQ z)deufXq%rTiuVPFUg%WQlf6GN!TVm{DVcffU4#adY;CVH|MmZsWbL*1o%l@t?<^}M zw`UMOv^B9dhf6gFcgxnz&<#m3Em&v#d&E`w)XZbuT%#LoO3X$D^vvdyPe|cz4EU;hqM(vTNJV_THJ;Cwd2fyRe+$5e(85s~@& z_YspduisO;%I&`@>l=~*U10R$0Tn`Kh>nrE0G0@CsdVel5oVkmUwj@8ujsYD%0JS- zx*POc)Z2A68-$ITGw+MgGAef^O&+xG{A?b8bvZ@RX;rlwDW0!tvzUbcntl-&-vi63 zpG4T5mY643MfxrthCg^Z6&T{NmxJ1{CE<0191u?Z zahQt&J(L1nk})f!^zxv=Ap7d;G%Ty*%iOq0!i_eF`eU?(meT!KQ}1gfyG%a3xG}1o zn7U62RD+oK%KQ?XvJZ%ye`>4>!==e;TfsLYt?&+M zgDGrq6@o+utf|3+l3z(lgRUK0~-G zdI{od*%7Q1RUu@g0|^$hRlQ^wtJ`;LHfAk4vYXR)k{pgZuUi9dU{AxbsQMaq6a6>{ zZ1zQ@;$pXh{ZJV(|7C^_FGc;cO;tuofQ19Waeeej($DOJ4&qbdDtzpDq)ddE7e2%# zEbbqN<#73)JHD$jCNse;R@4T@OP>!4tY442M!9}~hLFddset9_!6 za~4WQ9bK3nU}oa{X#xvU)9=u4rM-C7)xij=ar_ne+U)NO-UYmMvu6=*aM_rC?RejSUv1FodE5I8`D*|UN({U*HYW>D0#o)>)>1|VU2kh) z6*9qA)95TnFWRAaBD@E%!ky8gu?;OnVb_*Mb`IkB3>rURoVb0s=MVONeSzpuK~9Iu zObpi+fid#e23{R=#xILuG1-ETQTHwA!K2XEk=^d5Y-pat6obj!AhZ)b#31PqiuuAj z0A2s*)&U()?!$nB773xeI`1lXp(n{>7*Jkv!(UK=0VwGX^g{N_6kxz!MCp$NxO;q?cp|iuONi|B3QIcNln!F;IOmkl36i zfG!S4{|^T*pKd*;M!IT60mj+>3zZXng;HJ$&K8udyDp7en^BNWtG58$tAhSTKSy zeSdN13gCIb2|Hee`pxQmQRmO!NnpAM;|x4K&Q7Bl^0W^tb%gd0qJ5-|=i4L(SN?VR zZ^-ignZx)tr`ZyVK?SwWXHEoew!glx?(~*E>o<3Opn9$k?>rCrR!>wGMH!7ZJE^r}Wu;t` zN-$?1i)NO;aZU|~5rosI4)q5eZ@MYJysV~2=8Jl z;S*oOfQNpQG}C)XZP2)u)s2@sDkK=e{w**+B`wXAgNj=NZ(>9Dm^P<@w&9w#l-m}% zO0#5_N#0!3avn^>8#61Uaj}}Fsj%CV-rS#l{;?;o#$5QjCijl&A=-=9@fPRaB(wW* zPo9R+w00nxZrhbtif-HVxCQ6I+MI8gU@LwY4W9%o;szRGS8DA~f*NPmtfef)X(&4{ z)|qY0BqdjlRf8ovO61#7F2-X~0QW6m6Hx*7sY`;wO14Hf9(!S-eh&9vVH?hfb!39HSeRF7g86`^PsXlf zY@!PLpGPFQ|yi*%!4J2$KH8jfU47|ipp`dIJ?QXV_^JPP)$wge&Fb^Ewi9e z%g>2;XEde}K1HhyrV;)(6IMD>9|ha0wnGGkLB7=A9NFCUE5zu-_Aiv6De^jO)**uk zkjZLn3+cB2OR_@oV+-V5KX`(mf`+<+J1n@|;J+WWEm&qOF^zXfPD!Yq|NiL7BT$1S z54s9XcQ=0gHb?ly*c!p=``cTMPhPngG>AZH%)Kv4%?QG@*uK>c)Hb13-XaoAD^prM zxE}@HP@~K%l{iZK9S2A3UsfU(qm$8hRAnTA|2Zmc-sL7OO()V!qWcr|2Zlal-e!~E zyrQK{d_uvGd_+(j@}WrZq)NzlSqgX5%L8kVQMww`{{yuHGWaakasSIt3H_g+QbLi} zKR=~JIl(tSC6T9P2zWE)JfQewK?Hie`Id_T)m$tFg2+il#89G{+Kv7CBW+ud*eLvqlam3)6iMe=N6zn7sl=+Va)x96?v{Lc%={j=3w&nLVKRvOX^uPJ@> z1n=pTiF$(noQgIM7Zj04M<%@jWFdeD))WU;;g|b$jx-#erkY%^SX!+>ukjCdpkwS80b zvYVL>WWGkNJ2_?->ybd#L^GAH_5CfFln=1YaBOw9$iMzx8He6_TP_dCeb}%q8_flF z8phF%nDaOMgbMtFv1|WW~Yj{IvC-RXRVR(ioiy zTz%xRQW`0nF&)hs`OO+o<>>N@@!~>EK}7Z>0K&+B!`Qg<{_X4kfwAC!F!qWx{SC$n z=+Mj>Bb)X{@w~y9l+>z_I05uB4$b)CRca)1D_>F5VC#shipY8`L2{fBXc}#J zDt`W{KNeb;@s5(J=ZH2iK|^RAMxY$l-+Q(WPb{S=?@w*s>O<3Sq$A5f|Hbi)rn zFwnl+-E>F)68j*4r&0xuthwpe|N5Ca)ws;{e)l4GP7VSR^~8?7qRO7Fw{xIdk>z^B ztdje4Zm~>*z~kj_L*UN~us#(=rzE&R zqY4w-E@VAFcn~4CJA*;0<*}2zrqD5W;$09q;C<52H@coY1Hk)5fcnnhO~2n){AVv2 zrI%WKrQctLyxi3w09Hfs{yQ`kNyCrgM-VA+*g)w2ax=@t4ho1#CfLSwIK z!j~A`xU)!?`tK+mtSMf$HkqEG%K-exFI6XgYm-ZH=L5kQVn{Di#5&83?i%gh%lbCV zqwyq+PPTvJZ@;R?PhaSr57cv>rfPjB9;IL%3VOFK|9EX{MJ$#ZaAWBeiUA2wA+w?n zNrn)stHF2!?MU= z>7}S}63rGTa%sG*<#(Ol4MRt1;6_dcipc1gqSUuf! zqdcP9Yj3maoBqWRr(jnX$aT--`&ZDJB`y60b}#iB9QlFsNWDTWum&<(%|SVOnO3XWX4_`Cgoj;g9A<})f2 z3QJg8!h40%g~t~0ifi_<;#h{X(8upvz%eCHC)9kJ)bj9Xu;d6ME^w2xQJtHG_sSlb z?o1&OLdyShh;yA_CEBZr7D*;lN7rAB%K}SnrHN>Hi-+-o(omkKPNH4mZ!yL z#c5M8$THsFvHdq}}uECIZ-z;#IulV@%-Xzr=9b3~=uCg1Hy{@#B42SQPSk{r8B za~N>uT>0bsV46(bO_u4pU29nGtKBDAcUj^dq5rJlHZ3I4z!!R=tQ6r0fxLvR$cA zJYNBAB_*a(jm@Ak;VRi*C%RK#Tq24-@yyK~9nnW__iIe%F<1gUuZw8P4)eSQ-5+(E z%Qo7t?>%q7^@*NiI9gi>Z7r3B<&H~;rDFD^*s)HTf66UHy;HH%4>$;H6hSKTk2Vx6 zB^ngbgJ(NotGxP4?^V^7H@oy60K(FgEY*J(QDB2x$}eloDCvxA{d@1kb8;TLDWz=O z+PATE#X8yf=~WXkL#_Ww@IKfR7_y-tAEYH$MR4er`6TNI9@I-}Hx^@^Eo} zw+G-O7le|>FIw}@oytMAX~wHBJ4+#_n#&Xw zkvs~&IRt*tqc-r1oI0pG27b6V3HA;Wcw0bH?~lP;F%5WT7t_dtd0S2*&wsm0w%(Wo zv;2D7VHwo%#4h$qkn0zzq&PrvXA=Cj_3d_}qVVl-PC+ocSm#2_3qh_dwT*~m$=h5E zW?O;J+jL4P+FMLDs=?c1U`&D+P6`ekYNoW~ozQ%?q)^Q$s~D}1V7_(KZHr(3U?{hf z-&m%g3)#C?LTw@Nl=*w!FmG&b8pT?xFlnWwzpL^onZ9oyiGW)%#$yWREXFb;$GMIg zuQgC6U%dc1-05q?Slo{Q2BKG2Jb|nfDYRKN^awSJ&8BxpDr|p7LR1!liQ$=TzWKQp zZd}}iOE7KYb%xe!Q6%ki2{P#?B4?x}AseTW1qDgL$2{$QJTeK~*@j~tD-~0Cw{9L9 z8_Vv>s3fCg#Ugk86HA)!?&=1O%uV@I@?#y96)$|E>)1OSVT`ZquKVLa1(HJqNvW7f z6tu_~5`mE@6usYNpAEmYSknUOSFBwbY%$l+$Os9A`6u)Qd~Ro)7YrXcc~PVa(4DWtnymTN?EkN zUYy;)vD&H+AYbNo9kVc@UCWxPzdL7ktML>O9%02C;Ush^mY$aKB;QUU-hKlTKCT|3 zAnm}LxJX-w0$y;n-41o=rT%RqjxKb;9Ahrp7(qH^p zcA=F#ha*+laxBR;bYa$Sx1ml`n2S2WgztC`l*pas7-j0rOO)|LynYO3BDQsrP!Xk9 zjlu*WFi?J;3NoV?^RTIBpyzjq|CF3}{hP9*bf}($jv(3BRc>=vC`WE~h@szwKEAnv zQbI@DwG_;Q(yVR!r)ZVZj5p}V6nA2ZL&*=$A7wJ73XFf7B}Y_+%%e<69xN6Zv0j6t*zn@lYu)OY%W}jsr|{YxR$uBZsKnt$-dX3Z0$6dz&VUtlcjrd zP{%vgoSkMavi^rg8&8f}YnwWCL+)!yVr$2zX<|6I;fz;ykNTZC<+O1)Cr(chmvuo%}R*m_w?5o}U-ScXxmdf61zNz`yMU=%wG^#NIyf-DfypJ*9CBnTY z+V174K!p{mt?VX?1&K8C%Gl89fY+l`h?1H3bjB^)=0q{)pxQpv(_CpM5K=uTEF3?G zT|;P8Tc4nIRP{4SuQK_BkPW}FR@-l`| zXqn`P$eu{+E!MF?;3~#9I$5)B&!As1c)?h6UU;wf2|2)J5S}03y<1Inq02(~&>Zwk zeRvsTqE+rD(dMdk@U_&2gh|>ej%)No#U(bQA^L(As4e_SeJ5V?_cKG&$PSEBs*aqf z$*q1?@uJ)5ldVA4w;-&cd5^8}oA7UXqj(QyQrx~&jHV1HPOA`s*RLW`c5D(yy^u)C z!yaAZ&A68Mj}irhqH#29)`t$2j8t31(&K_;O4%bfc7>r+Wc`V<%ZcYc)Mq?Bnry-o{~S#|onN+EU8La2Y~maPwXFMw+u@er?0TlH)-tw>M7@2(oXOw zh=*x>h0nC&2{C;Kk9-swLry9bynksIa1wcer!YXRMiPIdn3SOwj6d7(m~!x)b~$XF zMg7fqOmH3M%s={HF^@E72jIQeLUUpk=BL`;r>X^`Ca44#}`EFwVYL*u}NX zH{DvGKblq2r!eODISLm(5RpOM|5*H`k4FtHXd90Kky}N$i~i(*kO$o^D4w?*i|=wl0=| z^GA;i(_dl*ILD`k)$CX$a(|+g8uO&*m?((o;*7~U$WiAcrDW8YJv@4_RjrlNHfkLi zidqee6RC*k+L)qYm5kw;v6oGlxXbA!hJxI33+Uoj0}^KMnqo6PNjM-9SyfPyxfjB( zZ|1$UcWyl-YsMx@b_c_3)pq9b7o)nAV(EW3)7yYessM!u7v&RHT2C;ZBde)}wqx5U z6|a9Lw5(ZO{`F~dizAhcI=e{==^^sN4E<~5x0~?T-K4y~CCmZ&`c-EmgrYJDe6N2R z{;n7eifM4+MLFeYt3|Av+$RMA+C7}D^zP$bhqyv+l37$Qa8j1w*^&xf3HvRV9m697 zP3=gwJi}WP4eFOi`-hNKx^lD-)PKTq(o59UeaMzY7(4>dRzEuimsec8iHLJ!^4l0dDSc5bjTO>H(!GqsYcWq%^)nrj=zk71bEIBbB^)fh)v??16uVT9!r@*H)>q@z1?! zHv#;d;lSj>#XXy)!0#{lUNP$Jj9ZeK74Wb=u0|tSwiiMC9X{%>2ha)UKl! zz;E{FmYWPdl6b;oM}=^*foXs5czF~pli(^XFNFJd0=6S7cPI>#ep4XG{r;Z&50(#b#Ot*`cMTD?dVD)YRN>mh_gX8Cj zLY=AWUTodt_Bk1kk$MZoEAvovwmewR07iaU^VIJ*NQ%hqMlH05qrS32jvw$E3Q})n z2I~*alWij@8OXlgW+Q+X5vRXg%nC5<(ibJtjC`A?WL(b7ur45HCB*7sm%}s)&G_O6 zr#m2+NVBh2-drJdYH1edtN>cg-5`wP;OM+BhtwU)kZPThB+mZjXFPfAYgJnfwLW>( z-k|%nLl8Gp=y$}yR*rwCeIEJ!0}-6-k60NrSNd@qLDdpcbsR0ico)IlR>AQE!5Ha4 z+IKALqF({%Bds0M4M?y02Hzd#FXxVO-_o87hCJEPd48WyCm>AK{1|$(M~2XjY2IeM zia!nDqP?*@`Dga9E~)v6O@W=gTd~odqI`NcU1K=tjvn8#gvHE%S#nrVd)9fRt$sjt zkFuzCo0QlLs1aN58v$t=g?CX&7vg@CO_OS=s7;@{TF;E|%txD#k=I(c1gT_^RQ+-$ z*iSNr3%2`-*~#&zS1Z1g$48GqN}BhO96geJ${(E$$-opj1yO>}Z6qU^Y0^@RO3MYz zpM!T0`Kk7t6AOQ0COT4~b?K+Wghe%$RX%?6iaj;+)yv^hry1Zm+XSVV-Z`Cmzf{dk zz^mFmKt|`MPkGi5$G{ttb0%hbj59zRqdtoA3%U9}t*F?|QG*ht1SOkNS5m!&YnN1t zKFXh#&MNX}5iZ|`x)h##a}`F*0-tRst@U56i8Np-UZwDen`9=YuOKl}kqi(SsWn#2 z@{chffH-%W4L+aXGoEV&m_N^K-&Lvr?WV}xZh`QUcCH1j3v6DT$l&uV)k7={BRmx0 znE}9qW#xD}&c{);Eq%_ z$5D_Dury`vFhkWFaXIfE#%YK?0e`D2QC}b=nnqE?FW#Sw_nUb~ZMUH@BoL1548pC4MLO z)AORL&&t#3y!LX8{|-=u?{YVri3uY0)TVOp@FNB~z1rAbyhsMkck%G?XnrgE<%2M@ zLBa}QAK#0-{3KU+FT$i(5b%L~ULcu#rXT%yJM7L8KjLjDOCeNtT8CF}{6>ZJ_rFmg zp}>Ds$d%?B6@n7;j|#cEGV%0$qe4P~|EQ4d>3>v+;9Hu?+wwmu1SRGl72?VCMumh* z{i8wzUkJ$jP|y_zKE4G${^#}|71H1Tj|vg&_(z41{i8xc!`|j%wrl@UA%e+oR0sCLeY;MPqsiwcrvTX1Zr z?o`jjWGEM59F(DkeFW zxEzf0_Rhfk15{PHdl5-MuAbS|#){dMRqXF~>*z}13n4DP!?Yx6pCkr=QA($#U^yho zmH6^E38b3F@H7)2MXQ(t6S0u3jKi~&ta%GC#?!(EsVfq49ATdG4!X=(U_Z^YzdSj=`=y452lLzw1+X^{~r>B^c zr+>lHO)h--v`yETj7OGI*cqAlF@B>WMp1> z@NU1!?pn{0^k23{%-h|lIg`>xULuEY@idV~wOdz&s1if(+KX)~o{Tsi%70}~1aMeO zPM64L^umWG*C1ACu54kA^CNW4v@O5X@GBK7v;S< zy*nxyOW0_DvK;m?I7EFZvp5Dn>NQx zh~oVbApk>$pKK60nZz1;rMcVlhT)Es@xn%v?YYm)em@CT7_e)|8eMaaz-Tq#P|ITw zdr;*qOqzKm!Q0ACZ#gJml#G41rN9@KO>vO-UbbhL12Um&qdp^6v3HSvgW zaxkwKW3XufbbJ}bkCS(F;vl35sn6?LHl^6YtpA>Knn#~Etu{HB*Q%zLKT14YncB1& zsm!@3lVM<aFXOgpf!7AoXu%Tk+JL4Eo(&N#e#2>iL;E&5kPEB?DRLs)Ml^ zA!knYsA0QpQHGjmN2gzwk2)3+M_3Z0Skh7DRKX*RrK|Xj)lRIg30~3brB{%U%qs)m^qkY=G9SyOgsp-GhH73@Tt`#P4Yx zR45~bM!{~dhPDt@ z5z9AL3Bo!+Dhnm4kK(;T_EA=mPyNFlU<-(1!v*BaG`uGud>#hIxl&3fqU+0se|-I6 z)X*tISgwAPDIgGF=5#R?m=Oox>N7@%FmDF>% zIqPG`rQ_Am{)@U9vB+J5luCN_%UBwEClAm3eUmIAtH|r=;wG2p6RSRUL^qH7u=p(E zcDF<8aY%}g+un9#I*a#HwlHYTh1C{%vHZ+~u|6)$^c!|Bh(CR?d|rrFiq`G<)>6R26Q$)Jjwa!4I;`itvRZ z6J>45MenTb<&`?@q`rNnvD$uu5 zBA`6G;NmL0O3jW(_GFAz4$+0QoyzsammwqBMe_-7V#W;eJGY|cH4R8(17`aKPXL3D1-3na~j^vZ}Ika5XlK4$r1k&;psZ|TPEWX zDG|Txm7#}+hT@@P1u$p(?qcI2tFsdkFFSCw7T9wAAF$1LLr791a5b? zf$wb=Dror6AP3Fe=g^w~H@j**fT-C4 z)Ps!I*0buq^b{}poYlS6N1yilU-u(tbw4!sJqs*mbXB;`zBOxF-++n$AAG?*8jH^U z4g1GBA=$zh0-n=EUD@F5UPfMD`*R%sE6R()a~lPzCjaZQL$a1_HNaxW1EUAjdi-s} zMPO;Fl>U8L3X0p>YbU;l*f ztC9Tgw~yo`en#Lyxb=SF(g!?h zgZLoGECSwdyzD-E7Q%nk0)IBY(7yeBu4-WQx+4p<-D}i=IIa6aF||Pv#+&}oegokR zFQ468&Sm^6&x_}Ee37dYfFEHCc%m_Gpb2{TYT&hPaJg~c13lREyY@ZB_L%HEQuU~M zoeGMH?7k8}*9GTXJ#>3ppIcl)HXb}WDAzilK0{p%{a#_AjR*K)Ev$mBOdDWYe7%C4#HEO_wBU>x~Z{Ipdr5l%9++z)C~Q4a9vAb|q-U%>_` z`|418bh|H`}hdg1?alVb3^gAct~wxHNgt@hbZ$bKBS zofLu2W<&0N$N1e{`def3Y?=Dof*W3eRDv9}9o>Bv(gnb_O z(So@&d+4&)LwZ7!NpH8SQ1KnCmYcS-bgFd`2Pd2ELfgH0 zbf@m4d+-`9M)79K>YEovMp14kNj?EK*|=(+Y+zT(A&=sU(4FB3{kiMyl=bAvi_#JRUAq0>Q_(;wLW&|v`@uzxd~R#!iW zO}cb|SLZ>oBSW+G+Xa%hU2c39NV*C$c!td8D;ju1+u9d&y`RprJx`kOA8fk~XS?-p z<^s;sL2`QTkMV5Hr^|;XDN+!_RpeH2UVX@=$O`z0DxaL>!rEZ5PRMhzEhxYa-*&hI zG6vg@w&7_5464>|KJTd%AnQ1sut{q7K&PYSJZ0Rwd9^n@=vo*L^T&LAu9Dq&6wvAN zeI*t^TLaf3QsUcn?_FH9H#sc5y|?{l4}-g_>j&tw?q0n7CHVOBE&1}xyhz9S^7Pg! zfOiwz59&S)$5(KD32k@0P1f5+1%>cbpf`EQAq<#QAA6ox1*kfB-|LXAIG^i~`&l|~ zO>As{KtvU`HFcCTv~48&SW7Qstok1-)}R79O@0t$n+2)2%362Nej1R^S=HXOFZt5* zxrqPtqi??m_~BvF;9)xD1$>-h+r3jv{?Z&12eN-n!Maxz*f6-3@)`>IpT=eV_B{jww5eK#!2(wRpEp)v9W zJs@Vao!|2M?1dxpR){>l;M*@bUN`kEgJDYL(|K;BLZU0vX?g8XL-fg)8@$FbDZ8Hg z_+2$y9X5_S1{qm6~>+S%%}#8FTU1+j`b9U@Ro#LqMA27Kmp}Jy;OFa z!`WT0J>~khVd#)&PS%~K4bW{SqHvuNcyL+7TkY4XpMkzExvkgktB3y~mBUiU)15z_ zd*@@Fe0p?qABWtJFr?nb7(JHt zLHKDdfcQYs$8$H-z}5diRlGH(+x##(qU*XF!tMXGkc_Nozv6kHcJG3(-*SGI2769? zz-znScCjNr{E#ev-TaM()_mk^g?aCgQi ze6_dluznTFx|uGr=6n1Q#jD%md&pz-T6B+Zuoj>Fh3rqa<9h!okHK9LqYjy#$M)Y& z;t-ATB6APIHQl2z`Nx&!i|6~|EPYTL(D-t-uiIvGv*Th_v7*y!a$U9A4O)NKt6}eT zQX8adbMe-~Wo@*(hW(|M)%Q?>72KD;0j;ezcnERmc$At%VC^uS)ewOWFt(uT@EFw8 zn?axDS9u)P>KY4O7DMIns{xkl@c78>O}b09PA10S{BwbY>TLE_t6FDOwpPr~WSiIh z$uS1?uXh8NLT=tRi}}rZBG=^+-ugbEYAn|Fqul1s8l%0Ug{6d%o~f+SX0!>P$GB>} zwrj*NDbBu#t}7~|@%y*GV-SESiN5D=0p5aNbw{gQ=JD=*K*cxMTyJ-yVyl;z{&?Et zAnXmWbzk+RaFMoiN|bdyJ!TbL!0Pf|Pma;A_l?4O*-bIH9m=Xqza;nBmTK3(n|iGl zdi;HruhFs14V`iKG8nbF@O#Ae2i3{ek*|91X2zXo17__eLs{3np{vl_pp-EGCjZyA zbNn-#<)*{O>8`8f`|9NleDZEj@E-iB_D1T;Rgs5oJwl07Hi^dN^8vvl84VtWX!U7%!+rrA^*N!g9Tzx&Jv3aYz z561oL&BxoCYk#LJcI@gD>-)SuSeT3Wg09cDH+}psmPen-R__90Y*!w0FAxueA*=1e zuVwgtHvyoH>m>m6oDmzJ{N<^tS;WtOYsSXCYd6Wm=NuM&y?J{+MfkN;qK6km4jn58bf*6oO!7)07nYTE@I zR_3k?b^Jirq?elyfXR?LaRcyB$^&Gh`*oC)c>a)OjO_U^#-~!sOA#5g+YLDZDEQof zV>(U?VN;;X#pHbVa-;hq-TI_}XT{a5)t9Ale8{>>|Dx{Zv*OGERQK8d>U%cK8v`i; zr9vSpplZmAKUOcG`L)-;XFI?my2Qb=NGjv;aWDaR`7$Dqee`^=j%dHq{E(X6SpY@v zx<$O~+#lxMXa@nWEs7`gUkW)lyY8Up>wx8A;k$mR1S-S@$kro#0;`WXNQ&ig@+x$5 ztkdpgqS5~)eEhO|$JYT20l?UVc|eTMt0AvFY28_Xv*WObLw&(+sf|YwkHW0y^ZZRU z`}X@xsNiZRWE3&myFbPMCa&7&VZ>lvV+N=lI=DqZK+{o@Y%NOYOUk>4oTF-y=p`2WI z2bIPtlD7Fj)@=$lfI>m*fUB%Y$Of<2=F4f=<&fMOcxF+=%gk@}(EH%h|HAC@WqXO7 zbhOLmJW5eP_!=Le=+6Kiv4C93dSv^}w)?+~KGpV<`#_M_^ls1b-5VU9ds#P|_ieII zpR5k|Z8q^C=LX%Xo}1fScFjHq5|jGR4`GOVmz|f{euwF-&{=d6ulrMdpY8UI>*C8l z$gdC$`(FlE=+HFib_}!%9Mj#r?_l6P%G>qS=K=15pf3u8;xAtxPYo11*{)xS!&y;; zJ$HutkguzKAHjCy6QIzG<&!E z?c;wK!FBQ^IsepMrD@^t_r*Z*@YtW}HZmTr4_7%fwW$V}4df?O5UR1$~Idp-&gV~>ASxpU8n z8)Voy#?YR6Wgh8XMYebN4gcNhPL}Q+nGRi<%L-cx!*o=h`l$Q0sm0I>YDXVG{g9n*qd7QvR zT9;?O_oLAQO-7ZBL=l5urV`7{E;HRsyc``s3KKOv-}z1LfulOl;!kKdSnUkG2^3~1 zyBGWlamub0?_o(4LB7g<<2-MlPZsH?KyyOw_bjY8^zlg&kGdRelAD}fW;#JuO6k9r zrz-?d;*eF(3eSTJu^Q9*O6|GR`i=U@)?Gfp-A4u4vbvkv9qo-sxIr3T0B)R;rcA_vcZ=4y{I#3UJP+S*k4r$bHd$qWM-twuUDmg^US zL_@uep~WG^qru-$Iq7l?jDl;g_mEM!_w#hH3LPyN+k^rkuGgr&CaqT`w{+nIuh{iA zGBKr;Q;N)HI?u&DDRRY$V)kXO%<|uV6zZm2k0I2;w~xi>*vK>subf(5gw8Q)l^M#L zEf_CEzSc$h2&wyAEhX|yjqe^#Z&IKp_e<-yW4$Sm=!oL(Zwjwsr)r}*Cs{}33l;gr^1V83Z zwPP+TD%Sn>xF_^@s1yu(9uG9D6_a^WSaTyjEW3rBX>);be=*tZ6CzIQ%kL=*R#_q~ zNMFHuw85LSlTRhL{9mCqAJ`(j{Qnke8$XFidGVY&?iAc>BQBgl` z5fuGm6IUP+fnhNw8;QRuo7Y*$cWbDV<}1c$`j19?(^z0xYBK)+N2ML|_+Kh*VY!I7 zbF_tEO0ie`A?EifxSm3R50;mrg!!~KxX+zk@f&5ErPJc#rjpW_YmCH84uHFY_uo9U zj|XGS?x$QHVrr>uV-?LlK8}f%?O|!psMqj*c{6a+DEQf-ABU48w z@b*_338CXqvk|El|GGV|x{Fu8(qjfGF%{sFV1aMie%h*;dvxUd`XWSEFC&gyj8sN@ z_$82rkEy^}J9+Vo{&YX_Z5bKu7qi?T-sL0w;F#$cO-{DKE1Ycp!X0y!XH?(T@s3Gz zLD?U9{^KuGOg*IvT$KXJ&oujlhYrfZ5zYasOJ^h-q4`)p=oA8?@OL*>-U{biWV$&d zkMkN$T4fp%3)sXli?MoT48!6U%0n;olS|GJL(w(8srYN}-rr**z>@ZVE#amtYPX#x z-&32}7MuJQDuG~Dod7s=6=48i=hqSE?OPt{hLl#)dEkiG?1nlvv8QHl!+ZC}_+J-> z^oUhp4|i$^5L0~zMrL3vk&E~T1|mKbd(Pjx)9-LwRb`Ee=;Cl2b`O*}eZYbJ&Pry< zK*z#9_hX@l85ovM+lRVgm&gGh8A_wCHW|Id2B*@Bg4-U$^_KtoEp3Ely~aKAuTMj5 zPShfG+X-e^RC0cuyEKcmd`~)uw`?TO{+d8BSbFwbfl=Q642N+@k^x@3+AIdb<T_D%^HJ3C(XI-p9-Kt@! z1oPf)UEtLKm8s}3{Sn{6s*wVY0%kBHnFb?f*Uzl4r{jzg zZC#u<;trky)q@_N@?FKH6EMoZIe96Ks=zjrkawp2(qH`OT2Igy-m^Eh0c642M~KR{ zH6jH1e4~kH$PtTbinRD1w;mD^aKrVwgP=g&@=A^JCuyObo4nQJ(@mMC>1E}hHD`SP zvWON|L4C&3v>knDgsAknwFB=Cg~#&Dmi(8+CecUPlOaSzigi}i|ITg6>IfHi32 zrYB{%)1?jFVEiuB6O-39fveb`V&vFZo$!Y|W>Z(e&J#u#7ozkw(qP%8Bp;?F8d550 zms92PX}%H-lGnHY!`WX2RnkOln=tMhcX!v#h6WmUcXxMpcXzkO-Q61L#@*fBwV{E= z8J_q3;{Ru2&gQhLRz_4sW#-B&^S)Q!2_k|XyZfc(0%;_=4)L3j?{~_V(Pqlg5S;ka zb+&Op!^pfi46nW9@m=DX!)M!91H%peTOGoiSCFz)y`Dmu)x>%*N4m(dGZ@KU9}Rf0 zarBnVY|C6r{d_YLdFI65fSgCSm6%Fuf2@I_D+tm2J?03x821YyMZbScOB>Fe#MAqD z9MHQYBnVVJ944)pcAgtq4sucUlS46YPc zT#3Yl^%nWz>%iJ;LJq&Dh`HAfi|q5FfQ8wSOx`7n4j$Vtx6OX(Z9zIrn}2;1wSsHm z=%@|+zV`=SWlfjCYp2t8c#1fC)sBMOZKC1~0$^04C(DJ{EQfUpvGE&ZQOv}NDBI-_ zN{QfIog(d>6|cGoeH)rlE$3nEFD$Kf#a=B^2#;@hDHr}iKi>a2$27}^_EFECfb?n8 z?l^gFXoqUZD7!ndjCtlVA)6)4X>{8eb}RZ_y8&+T6{D8G?g`j;3(lSossBd7t4B3P zC5{)t(_#LMyC51XbXIhc+APgA9)||e0O^LV#y%RNJKIsidqI&H)=Q2yTIletj`7`Z zO&#nmM^c0Dqv00FJR#v})(NlTV|Jg8>oxx0&%{k)`6FvMdnsXyAK)nYzQ3u;0Tr9cOV7p{(ORL5imPD4-erC`z&z%1*g|X-6?**Y5T9yzA0qbiCfhckKI`fl}8)69j z|8p9k=y$_F_w#&*8T+|AWa-raKP8jlYoHkvs80UfZVmYdEHA~}U+4m4cyg=rHrtfl zyIz&3|N3Z7x}lCXOz1?LaXV5faqmM?tliRdS5>k7Mpd)3kgSPr9$nECI=Pcm_V&_6 zM5qh(EFl;JAbGg8_V?I2`0sA=*}u@gz7FSs06!C#?*g%pI)PIWRaAlWi8iSOiGS+- zZ6$y#0fsC7F3sKJm2XJ){sc1!RYBsXx@LttVEFKOb+kAg!PXsGv-dTP#dGmOrZE*n z#SveHFqvpz9v602^M3tRlPcg|6@%XF_~IKLj)6=lqs~hd%N>an&O$o8x_F`KxYe@$ z6X?FF)-TTUXAnvp@))d+g!ZlJYtral)P#bSnK;V0jj+nlIfSwU#p0^kqnCT(OftWBs7eag=342|Umxv%jUIG?)x21t;MKTuUg?kv?B7NTd z)HxmF2D+1N?yZPSYT-#RjYOzF1|3LoR1r@=0KLk-XWK-O9vN~SfQ3F(Ap~;pH3;?c zYlh)F%Iz`&tR2Blwe`ohAO1W?laP2ma8B`H%Y@1p>7%>7N!}}#$54U|tICI0o&t0J zWuWr)sr= zW&=fKElV$Xqo(Bp@#1bj%|=wsLy)?cg1s)$%ZN_RU(N00ld1?DKR;_#4eZYQA8oV- z@*ZBx#|+jgd^-{OX2B!@eZP_gU9c}1yj>5h7X%*n8|-h`e%5(&;UC3tlUs=dM`uKQ zJFw3I2FoA`V!d^lJ|!;5jv6(Ig-TuAnVqn)1?k%zQN)M!8awpS-HgRmi+--gU|I80 z&#EP`!L+c8xKRR{aDWh6n=i6%;}eIEs>>DX@FWr0zAwP~E`eY=RHN>@+OII zb^PxeE;+g+^-}IjkSWZ!U&#wx@j`+m=%#euwcB@y{Qo+ZZpkOk$S6m2h9 z2)Nv0<$prs!iJ5%l6_X}bu(VdIqmdQG{m~jjilRAhAk_q4@9RXlGnRUa?DIKMqKFY zWtMD7(zB6dAXgdgXRSQv!==~2=ysgwX=VvWD!UcF)q(y!d8(dqc*)dM6UVqR7)s`) ziDs2Ic8^5UJ32+;3<_iL(fng!On_7?4Sz_#cd~(R)&kGs$lun!9HInsi!_cmR)ib^7M%^~}R*NF6$;3YViRR-zAC&dfbBtl=>8A;crkV*I`{i5L0U!J~= z=sL!hjki~cr;ySZ;9?mJ50<`f4XB!w{;MxG2hr0B=7wR&DDW;z#V`n7k&&VlazD(f zDSr;a?JL5rFp|in_wq@pz`qtK%Nr&Y?9X};tb~6=sWP;9%9m6V8^$*yHpRnn3$gF7 zb5Ps`K`v2+x;r~hAys{&ChxL}BN@c!>C$M5e$aVVHF1isc zhxB~R#|+HJSbXKNNk^g5n2ZZ8z4k{?8Q$<^IsXmkYS}+Aizk-RC*o4D;t%h%=SFZ4 zgNB%=QvdCVrx{sHM&NAR#kNCv>laMW`g*IY&&!ErIu}g@04$fKEUM!pM zEmh_c2s9Eu!ULTLZ!;BV5EuJ^2cAa`e|ho6?X%wSay>>&N%YeDGy1~t4w_EsgegCV zPZ1#GoGtFOA986|%jErPZN7RsEnn?dOHj2-f*R3nC2II`h zrlCX1IvuHPM7PA=WHja+`F+rf=EzGv_ZPz19K9e0O{lsjJUNFlRYvmdVY z@wRy#81UF!XcQD!4$s5GHFcLx`?blg1qT9;B&@(Tx|+!?^GQmkQ~Iiry#1 zLlsg;0&xcG&JM%jLOZ8WZ&n2u;}uki6J0Q$i)g0s(IFVq(L1~5dQ!XESB)BdN9^$N zPHzPh;a*1K&-<_C8SDG!;k1T;Qeo~kFYUn-#A%|G!F?fM1*$&9*=-FuPFb@_e~T;m z4k)MkF6yZ7r?p#6S4D!0-1d0^`KS{Rj?jpCNEA6y+-$m%)U_`0pV5EWcY}Iu%(pt1 z_wTrbhErYS`VS49iPAwoY5)yk*A&67Rd`A0gq6%}p4=-X+I1*OQ#o>}TtJ!%{OjA} ztcIy8405b*Fjsqh!BfG%!{vV@sC_My2I)_(w>qxx>rET_Q*cVZR!L*supuw42hJ*w zm)vN2#=Ooo5^1s|aoIn^P{Jk)H@SqQ7vT5l~xLR>k`kN#E z57oYWSHs^`LIRT9(U7}V;U2#xbg~;KFTOVD)IlVx`Hs{mvRd~UCU~CDu>=kaqAors zH3{zG>UJ$A+t-qRg9TDCbd9^KcXy};B)X}|iBp(pN~Ro9@WiI^f|UIPo4@*gf!h6k zINH>2p3!3^um4sd2CgXSQ9V{V&_tEYGol7sa#cq!naxl^$`4}H0RaY7LC2H3X>NPN z55*(~qecibD$05=i)Rqp3s{rN-L@9cSi{H6cgEED8ZeUGGovC z{B`WhYj$%F6}(7l`AaRnMa2{|4D@3$-RVhbx~l5ECUakr6aOP4a{M0|k>D{X_L$5$ znehaEsi63Y{u}LyGqlufbj5Y?W+1II!XrU9m*9}j_JR_#XQ&28U82IlbOzKBJ$lIJ z6}*-=rK2AQdKtm5vS_tc^`ILop$Y7=B0BDsLR9@px6SDtCy7S?V=JfYX9<#kk2w?< z_D0L@@9S|Ka4x=aEDJMY&_6#Mh(^98a%E_kE=njhueW_Hudq>-$GqwYwpw$a^4nzp zO=wdAF_o(pxgkM7pi8NIkH=7Brll)#M;faXjxPhqgypQWd0Tz~ps@-@gi2#ft;+W} zO~&Pot*O18tscI67I(gvZ`c=SS6A1E`&&JY#FE!%*GI;=J-Llf_{_^CJnHWniiM?t zSf!*wJ{=h$##yphJT<_a=YNFHD=R#%wvKPdb4KxQ)nCk-EK|_IEOIA<%2)d)36u44 zg9ki$MBt8X6DKZtJXC}I7#j&CRt>Ay5H3*k{h*z^2A1OLMwF+N^4u6P-)3g}W zW3s0zThgR5js^&K!hYpPnhQ>kx`fAFXaCA_z&NSIqBfCp0#E8Ni@AlOw~;~fnqs}U z>i=(Uz43qN)_jUw-mm}I0E3o4c_>ziF0K2wURfpQekCI<&ehwpkehhk4Y9u8jzPFS zA~oEI)!nnBk1+_xYeZv*RF-T!IICl!Kwy-BvWlf=%+1(pE~1Bv*pTl_t%K~UQ!q9+ zdQxOAUQ$a$sFP2a{E9Yz&^01zlFFO`!_hLi#l-g-#gQC&!;r@7*XqpLeDX<;ZW$A~ zogoMde4|ax(D*ZuV(0$J>Sx_5u=K@e=1y7Xkp8DIN|*fqD~x)*t?R&qwvJB=uF&xa zIyuP+31SEdx+*6*uQ8k#%nVSKHC0Rk1^q`{Iltrs+WJs(|4(oYo11#HUc^_qRf~fQYOeI{ULxiam(^>#Ts z#p`d(-$CgMp%L=54rV3oqkWiGW~LyX!^@%8%4(;a;>=Tr+>a6Xjwy?0GP8-3 zXymbvqsm_u-D1mD7S4$bpvxE2x}s&j-&6j$JobL{IKsO$jBVhSYEF~+U)-&5D3+xV zGGc(r5n^VuKF*F@)RR40%;jbOe~33gBxv<;Hv9jEyqhB)X330^eKHso)DJ2qJzFfl z>Z7Jv5WGlc8UJZe=1LzE)G|Ipe#B&9*PFx2ndj3AQflMWR097}DQO6Dlb3rsQC?|d zj6g6Llp-H0GRo_yc6?j{wh?xvf5i5M&~$X>$#db`&e16Ramz_9Y)sk(T$?7Pa;5MY z|2ju(pf=U98$BJXWuDO8zd#Cj9weL$HYR{&UUPHO|7EMEUv$9b?K&QgQ%(Us()(s+)EJO($@S{FrmoQs-@1H=<`JA$gp ze>Pslq|qj#(ity>6TLP1vo@{l)MP+kp+#}%%0t17`R-x%FzrqcN6G2i*poYu!W}O; zd^T8zD=hdGAMME<`5gVdj~`W!+HaNOi15+aMDl|n-a?)4G6{L0z|(k!t*6EsV(;k> zrwzQX;^LUv|GCdtUh95)Zq8}aak`ElU62?>LX$g=g;IE&RuWr2Ox4x?63O%|^T`eK z)Wi^UtSBXk&FyROnAI7!H{9{5XBOSSDO*9$B_E?P&k5qwT5376xIy8PlV=@s82|lW z?NX%83Kqy;y5>l{E936aQ7m<14G%IzN^lkC|AQaR-zgOY!~ezL6MdoH)970NPYgbi z^U`$dd>NK{cfRa5UViODjmTfo+yKcl+X>aM@TL38g36gm>mcc4flF>XQC}&(w>amO zxp8MTO#;@sn_H0WA?req6`?IAn=To`(1;5rGn1kAPdk81z#^dgvL9hPBEuIW#z=dj zG3_O;W~_v%s@r9oZ=)4ETak&h-&*M+MDHox@TLzk;_p#X;S7Sr>6t4irdJ%=HZ{{WOnm#K zG-WOR{I4UL+wm)PdrEM;h9UnNq-=|NxjO2EEAfO`2I$ZM#Pd1Shj1`0vS)b)En!!M zgEGQw%Ix<-+yl4J0AD>QA0_WYawdR@)WXz%ZMMx|;M#79xgD$XLL+G;6S^ujg# zNev@-g;tvXoJZf=F%uE<%$g_H; zWc+h2vS{h~$=Ei@M1H<8vSaTP{sLp~qCr-cjX zz%20O_|*$NmCYcmz$&L34av6!>HTzs*c->CowH`g)e*lIY>nw##Rx7c&;Xh!b7-ZS zeVylCW%5}}!$vnB5^Y669ncENr7ibCR1_T?hKzKe4D<7cU!JLvm5kXo`sMY0o>=U7N@kW%QGFYvz_YrJ4*@RFM znEg$1y2B9kq4&W-{JG;U-B{j{U%Zvw}^ zN&fD9-D^TC{NLEGE9Ew4BX9qZX1-dgf1vmZM;}{Hc)t0%X7a&8xAPTlRu%FU_T|a- z6*-&vN%h3V0{M|qbtCa=AlmX-Wvp9T_#xwF4m+tN8sGOJ#u&DD&#jb~XC4G%D0)B0 z@+PCP^jv3Vs_;r;apsOC&!?zDh^yb9mhd#FCEoef2zFOP?Hb*wN0qHq9O|UqQaN{C zOM-FL^w(rXqs#?B6vdf6efPJ5k%|0C0*?p-CfjLyElumSIUw_AR793ggDe``5hOiK zTJiW^p0ys+Gpr926t-tWdpGQB-vN&EBhFn37S0YmV)kBv>shxtJ83YQwsq|68k5W) zCF3(i;nCTRIH6KgbF3v&&>_$*x22FAg1)X4&{E?b)jQFDW#J`fs#%A;|!KISZ zGIq`*k_h6yFJYrl!c>-qqo*82QZn=|dhumV#<{du zVIcS~m@G4BYDF)$I^t-G$aUr`2#iYqob3NfQPR$Ew=_237^`;NX;J(s$T`d*A{+u zm6tPq*m&GrcaVI#aeug7S|8b$|1kTRRd;%Ane*c$xDwR^$@_}KWRvVCX{pv5kG`}E zaQm{qu&)g6Yq*%iq^@fX#zJD+pXwg;-U6g+Q`_ z9HSggOJ&!Um&XyEUp`JoqjK@mnp^aLHA!~YUFUn{c#^eYOr`bXa1|eg(vcAp)>col z;EtMfUhGGJx%Xx`bQMxOwF4REl@=lavSxk+u|gL5G2#or8o=ku&3?i_lHzUVfBCwp zhv+@}3%sWE&b}F?kOhTGWf7WthNVb38v|=7A2ittq)(?^DLol6j-`~Tm9UQR^M>>B z6zAWUrO$KDw3NDI1A%9{Fxkw|rLzKbFne8!z#8%`U!kdRwHFS2VzggOR5LjML@Bze zF%x`!Tw-Qa&+)tSMlJZvNenTD@FUZpROvrbS&h9_7zi;?m6MbVYw);IrOU&_q*%@> z1Pp?65k2m_`7BbW{w&pB1&iRZ274e1L1;|m9z6nki=915%KY`;ggYJ zG)eVN1!l31Xv1~o_AS9u0rVZktyp<*8^T@=fwVLr=%z`1{A5tC#NtM{(#@@PB zOdez~g6DP$Ack$=DLxs;VFQz@(gZbS-3f_*UysHkljV?0b-A;y1~z5|$1{pKZ3s*? zjq-&dv1ixTt`dln%h{}fjiUYF8YeE?FrK^kLcC zzI`wmZDnWI$p4gp9c4m*7BdMP9A>%rA<=g>azpUj2t=4<5f!W-z#2-@Se{d=CfgtI zcUV#(&qx|n7^dPGsYF*I_>7w0Q3|`-IgYw z_)AmZBb)T_dtO(iXTizdsc$^|$*9ZIC-A#AjeFs7~KNnEMm0m@ZVaH>w)WNPQQi|Yr4xw$RQ z&OBRC(K%%)6y-$PJM#vHldUO_q*t<0nw3XaJ24MbrEQ#*3K#hWTQb=>va+(|USqjB z%@={;HK%4ZKGcg12*-jDLFgahOT2d4z9qk>!y7e%gqTZHWV=pL(jAP`D%4R_!jQSl zIUhukQaA8I$GE;q(b=l%$+ivuD-=eN9cz;Gj0ry!I*63o7MER$YHg3`$BItR&(DXy zD|~(?MXA6GR-jISChc!_Di$X%^s_cFBKZY~?B8XQv^^BT)B~0MOr^}4r5*^%+vYL*Hnk0g+!F*hZf8gd=B#FOOcM0c)hlNT?(oD z(P{wkx-6}R9Mxc2fV`Ru#)whl$F1&G{baUzj`wD@%?W^+bc&kGowy zjjlArt-9q%-nzruiQEtoo}uDG1qptL+-Wv8E~>5*Hp{pw17^$WAJ{XNxERleeFnwR ztg?Sn*gkT$`R9^5q@zNjqVUppc# zJlJ@X6kdyeb&JAj%0KWuMTVBKP%ty$0w^#X%;*@<)TO+1R;$XM*<=9gR&PDn9njL66oNk3!T>6vk5CFoAjM%Y`}_mB$U2J|?o5=o2K(+bghmvC z>u8rK7RyDYX|#cgLassLehHIUb(!)h3(Kmo!RQ?t8Ay8+ue^|BGEL<%$~s_0aunXX zupggtw)eBU&N%CC`8QF)9~609*zuihmJ)cCZ?NmFkG-abP5qK6Uu!T0zWweTl=3W^ zco^~Y_eu8p97;$G8ii@MVfnm8`8-wmyj1zTNm-bF_FYEEJXV;HARUOSg1 zbr)m4I|O}vllf%e@flpr#%~4FF)3sKlzY$){^`Y1;_%%>D$XJrSa%%HNWY|rm7^g2(O#akj znwCHsIi5TaBl_`ANdO^}L{cpF_qLmB{yoktbn8e%8WAH1yO_WR9+$sEXjA1V2v^HC zWVl10(GE5mQp#R-nvM8g)yWqeIazw2`9vqBdnC(nO^cR~9(1gdQS%9U4L`cM^ zvZcVy>q`;cc)8Y|P%*`PlJrF=QfBsR)p>D?+%U{sQ{?3Fi&1HVQLy|D{ z@80$L3NT`lt7kXwtKgtvfn>p5*DMdW8Q6?ClClEDz*fW|Zjl18TVEEpfQG~iinL0z zq20y zX4A7Ee_O+>4|<2H$&=129Gqa>&tc0I>pvDHT_y@xWAum!K4ui*LaxtYnu?BRr2*^q zTz7Zx{K5@9Q{@5ho z^nwd~LqBib8|(x0`esu0E#sk}grDLo>ISfDN)m(fQq$D{UlN3ySkdxJ%x3i_nz1N) zwS!%5I$@m~xRPNgxJ+L$NwDTmTk)dGk-kMsutejpD$8z1?n!}i8$OJY0;|SxtZ=XvbZW>LUU3RUM<0>1;NMuzSc^~3idacv~W7H+2h^q1$ zJOEHL_UwfVZM7wa$W~dNjNj&mn`?skk(0zHkl&n&WS$%mH`3OIVK|y5E(gcgPx(lK zh6%1s%6b_>Z<99fx(C*zKW|VEDtkuI5ir+C(KrE5HBkH zg($`f)=4^mvvt%E@GlQw95fsCD8|gVr&4U*U5t`KvnGYjTm=lFnNjmrej)kbma~{x z`P}l&tnR%n-+!P{T3+wt<=hbrxEoJ!nze>1S#ZV7c9&)GK%QGj5USDiTR^lmhVA1+YppI7kYegW9NYkCP}cq*bR7@R)G3kuZ90Qeb(Xmt`ntDXqA{uDJefea$GIbLp zrC-`cl){xQ(K*AMjus+v7{=>JZfd8A&WaoR=kWm-0im0g+e&HXU>>KlRQ3MG)jYXK z428-8f`{diqte>`I@^tCtOla?=vWECJf>2CPF7OjSL+D;T+6H37L^Zj zLfbVDg?&+JQoH)FmZAGFkck&4o~?T=t4R zk~ctP_@~94OaFS(#(EC+Yi=v^Vx#C0%!MfhLbq=}gA$0yqmqLg`A>R__a)bg8Ycxz zH^bPjr*c&$10o8w&e`PmACZXh>}-dQm#A+3`cc!#l`6sRL^7OFpki`32~+gZi;#>fHj2Q`>RnYlxWH1@Xl%nj?fV@$p1M zw@5aH6lLJ>%rxCUm$BC>amrC_e|jP&yt5>U1DAbG{2eEFQ0 zs>x7O$*teyAmz}sjPHdrxWAO2iHaT68nrq%s!hHlGKaJJv&CV2xrbm}vX#LEG0z%C zdDefE+a>|4s8Q9x7?w!^7cmIdo2e1L(A5hFehl>DTniE}$6zD#vq*Nj5JkSr**T~$ zVQIZ__N4PRYayZ`($$wc{ab|WklxfU1UsSfZC2PU55gUd^=i$O?!BT_s`YLkByYpT z3Pr_$zhle58u49cPTpmAhxW^I*N?sjLeyBx$fi-8zS!kN5peQYOp{gDS>Y7cJ+{^PEdrcT+lO)Ir7^#3P@#*`Wv(ziq3gjGydRQN5;9P!_Dz2bq^ z`N(-(v7gMfIjXQ+go_fekGcIk#Is-QR0RHEWW_wzYV97lg;RyPc9r}E%$v|BG z5S4JSOejS-;H+Dm4MO2myYVxy9h=j@QPXPfN7D2HQt*cHB-yTiBq(wc7#DbqW~04; zy+DgCY{I?fM9Voqy=)OF4PPc_Cx58Qv*#^egJRJ#tmQ{NT4Kc?F0q+@7`s$F{!4_( zTw7-%n0R9y?$8sr(5$2ieXi>T)9;pbwT--E?=ekgQ?r+E2IH zReuwthAdvN?~>V&1G+{Uq*NV( z-^uAD%Squ2qJ|B7RoClw1?KGLJ3JNIzu?V^#0qZQ7$7}`udsG1vx9OEw}RlW5K>s* z3Zvbh-mp*9cnaOP^6NBHM!yKxS4r?2HXHOr$9k#FOJ-oMCS0?hIo?MjW0#(Vv+VX@53uqa*2pQT0-*gN4LIbe8v9^&)pdVq; z(-szNSt#s3`k)u0eI@O`rCZE2T{utmQVrIOShLs(|P7=sME9!EhjqB6L5QE=?d<(5K}@TIEbeRDibMvM6uW%vUNtb5&{M( zR6EqSOjD`GHZ>gPZ=vkoCw*qa+I6)(TlX))BnscKRFR}lJLP)>cP;_><_!61Btv!! zk$TH!bW?4l*xjWq;)tJ1D}Nk=kj=umcK;Z~MRho@sDsq*6c|xvK^(ao&Lf<-1@#9l zreJ{9W~0}FlI@BEUdn2o5N6eIs&c&@LKwz^f;7?U;5*9^J$LZ*#RO}0NnEOzR`nOp zm=D^P);YOna{+W=co0+Eq-6I@UVCwB`Pmi~Ij&!v-?@AbTz8C4&^lA|amB@Hs{g3C zYhI5~7ig=XJd1CxV2ikXv9Ak$_Lo+f)Vz`ClC5X9lnu2M7VIL2-Pyt(dEUAjhmCg$ z0nQub3k2s?-SSkp7InT=1f*bX?ef}Y^L5wg>b$Nq%rEUrl-;J1!eS!TuFMu?KzTCv zzYyd-*(R)e5gX>55vDn?Ir7$fbEF!k(CJY{5|d$}Jlfgka9sf;5O)ql3f?(&#)g%k zv>dh|b+ROieIVLa)jl^F;)%tS6Vmnmzr1j4QO?=Tm}6rt69!L;LNIs` zMy0TF4ld*o_Mkw=84oBaZ_sTNwW`w8x#Q|n`QP=I?sn|g>9Y?%blBA#n7K?*&SXxH z6q#;3hC+^q@d*d!2qHBZJR3AC80{LGm%wYSftp7#0hk$$&rb97lC&%@{`>X$x%b<7 zLufLpK!V|84k2+JA=V{h)&@2p;=ZZiv%)O(fJc5Gt+pQF(S*!~@Ex0&7&*d5db&Tg zD;6Q%B7gp=<^-eB>j4xsDsP=59k=jmQ=>`I5WoG~{WU^(CG|oGi?#$JOa*+=moGvY z5O>SyIPjq48}%TJ^zu@#;lvvpBG=9TbN$M@jZrOAj)9EdW9kjytJJok!L@*ZB7~x? z>(Km;&bGK5HE22huisSL#JTDp2p-Y;SgT0mJ{9{l7Fo?zRDDSIr&ufRc7My1=*^0B z$-i@Q`Uxdr1~e@{sGX~#UwrUd#y%zO@SgN%xwm@yiwEUIY^j_wr2+KoY5gt5tSx%V zg)(pMo(S(9z=&?;Iaw7c6AyYj=?Xbs_T-bvI0b z!;KKxG8(8D5RyH?joS7Y8gnbnx0lVFo|nHB2kR$PU0KGkx3S%8b3u0fR>K=iCCB3s z34KhJR<|Zog15t67Rz@lAdA0|TJ5sz*%eK>nT!ikE(^GL{u2t@npQisgs^cy7Bx))}L`(yg z_tR*izrhIWO1G61%PZaU^a?d8qZ7bmd|99TJ2Ov)Mpn=sULFOwcO~LKL8N&{+d6rG z5o~1F+AWxjy0>q9Mi5ih=M{FXZbS`v9PA8)sPLp)TM^rzrB*?w`K--}lf(gbG=r_b zaIe>t48`;ooy*dOwL;XTRp^w3u2X4kUbe1^XQroCQ*Y!vNauz!cQ>e6!zACz{7W(O z@}^LN%-71-@Y=_gF-`8-@w?2-V8efbhG3$hR}TDrCFAKLZ?LE;Afb;{+V7ei&(~n> z_YACA6OBNLy)#8H{UpaBRxQ>QcLGkp^-VcO|CGJx$tj4IvG;T z)W5`vICs_ifV#7siRlv?p1dvWBlMLuH|H_^)1(QsArcXC%fS|prQ;ggrpX#_ARn z4HSN4yK!WO;ePn#9~>HvNmVVN_@;;}OkFs-2%8^}>Jqkql+)PZu^aor zH0eec0gH2I0mx-}P^mV27%i*PD;(ClsrqDYr~RqAb|6ECXg~UcUMY_B#K6c=p75GK z+e)2%TMWR3N4`vb5hD%>l4-*;I>fjL*3M2b5#hWX3oa{9$n!eph zpb5{9n0j0uHhgVV8efa-5JbW0YFjWsdiA?5F;Q|R8ae3Man)0i?I^1aCrK7@9dEb3 zDnYFBpscCkh3H*u0JM2PEJl-vm{-C_b&u)fY3ZDBxjb-E>#-7VC!tf$+Bz5B`-3*w zAqqSbw@WUYb^|u&9->@K$NDH7v&VMuCuPcSRsvkBCteaviuCsB+6KraFpwL!^UvzBxGsZAaMVc zE*@L$S!-X^#rUD2DYWB+VV=tHJLJTDWjpQE0j5~}Jl`7TuX@h*@=G)=2^2$cg@_pQ z5ybNhDSD;%-)c$$In))_3b~>&onuqe`ccE`m-rc{)A9ZGh2xqW(Sx`;dQ48=@yU|p zCVz$&eBarYd3oSt(;{Wt63Q9->qr(cA`fC#Qtc^ry!gug5Ze5 zrUag-I3v)-#2?k07$s4g1+EB`2&`K#s#`DJIt^=k=?A^;GcZqeB4THzr|33e2J6~g zOxj)vbAvK8BRy%idr4rdt* z>{+?3)ee^Z#m#Fw*(Z$Jg@l}tk8Hv{Q)4CN*$ddXx~=SNNhh1!GzY~w9B5w>wrwzG z&#I#v5EEOE9FglA+vL_*{xUpQDim|gP+X#Qo8ycvknJaF>_Me?9z6A^elkzDd~HWq zMs*}9oa0`U((U#Z! z=wZ}o-97y5e6u>RX*VBd1r}MkW!BRxc~JRkO`ocHUXpK{yO2<50%gs$oO~uaCnx74 ztjbJ~b^bE93qG3%H%=~n;F#DHAl_T{(kWi^7Qj^8RD@luUPEKM>l*Qyx7qnY;b`y?U*a}AakM> zKD^ZXD88-4kGy=XTO#}nM{H1*m&7^6W#E9p<~K$4w9cWZg~Ep)_H=Ub&Pj7Xetu2@ zKR$b+sGok`$qCNih`Gt%0s>k7nDQeQsgL)?OuQZhUehs(uZGzssEQd#!y4;|f7~2* z_lo*9ZE)gp|4Qzh5Km-ZIPl2-c<$NZsj=P0oQwfS#71%AY(ROGP0prGyRylF-8am^ zX&DW#%%nyXOx%Jh1pk9S0{UfEE$JG0%1pF8?3!m?3SJ7Vu=3N}S3nw;cR?HJ|K2uo z&Nf3PKQW{-@q~=oz0kPq-)JHg9#!``gLV&G#JDBma9V72T&yEAhGAu4`_>HmE*To_ zwMh?gqWq0vi+hnSN5-X%kB_08KS5|Db~F3WeOC7qRnII~;3O1b@0RA#yLPURfNA@6 zjlzbDV}Xi$oNX_D=2pgcH{0qtON=b{9`%_ajgM|`+`Or2hnawE6oF{-&kxHF$5)d0 zt~W|sMW)yCrt!>ye=sXR;d&qIO71iu^7J7sdp5@3ze&2^ENSomgs}S<=T09U4pl8b zKmCN`#0$Ixo2TWO&eQ@!JTU<;%>iC2myGb>dpJH>zapzK$0=|)2|;EXyCt(I9*OY` zc|#AD#t=k(4=0ImfC{JqHD&6T=}lbRVi0S)F&va!vGWwTxGjR!F3$lnU_2Wtf5DL@ z%}p7ZlqH*ih@#|bG(NunEvvoZ&vfHv_`Zc>3k=vZ(e%5 zwZ;;oIbV5-x6`48zMuk;a)s;(2SN8h`5i;<^QZHb_K4*Z-_!ZSo=ww4DPDMB^~NlM z#`#VyS%(BrYtZ7oYyxiY?qK>gqqA z@FfaS;8&QLv?><+9b>86@R%xnqeh|N!+Jc4J(F8>Uz31;$W^u&J{lMt$KhsVT*jgs zVa9iD76yrVOy;YGq()4Vd#$<;k?&og{BKR~Rj{pP8hnm&9a==I98RI;@zlYSpFal zSeHw@oe0jwwM~XKCwj{cJ_`QHSq4)hK7|QtPoUTL^ zUA=dxbsGrFPygG?)u{9E{*mm#avrE&<=&;@`)CzA?X zgQBI1~@bQ4E8r-Tdd!Q<=Mw%sJlT9E-BO;=@xHy-tXG%`{Bh=Zo zDFk}R(-gMDWa{{Vzbs?SVB_MU@6QN=O5*NNEhHedRWW~bJK8D$l1W;d^+O% zdvlM(hAfR274>$dOu07RPjkBNa6AFcABnPY0IIl;?krUVuI;G`@|(O)eZn8Y8(`1V z9z73C?%!?Rj)QyxAZo^eSJ6_DS9#E0N)|W{khaZ3RJw4GNApFjiLKb8ufzh`)mnli z*wqAFq9KND&0x8>mt!LV-;}AV%}Aet1ziY&0iV8Y<g3)X}Aq?4bSW0rf0839QqEdDgx6nKimADiTstn6N~6WA(GEX5M9! zs_*ds2q(>Trv;xPz>j@cGy0vw=k24RViVB;orEK$ExE!s9PdY$=L9@;+7QTF{0>%n z7w$1Xf{iE2%GL1OyF{0KVF1m|aTPYGl)XxWqLxvt0sI^~HYxU)CbQz7q&2XshPh_7K zdhjqN5xzxigRhz6(;Q0~gJ)4;1#Pe%T23upK|E<4S5t2;Gn*AUOpr5+iBK(4wzU4N zC|>iyyZ;sDvsmp#YI7E6Lq5h+?SAX2U7;r#lTux;Nj4>ZWE{FBKnR5_QNUDZAMZ;L zGTY?7VrEt99q#$sCIRu!7(VYscAXX*mZ(_(y54n7Jq7LI?1MRD zRq73ug4(s6lBP#J{+eGt>b&GA62C=}zpnJ!$Do*faFovJI|KY-o_ydw8F32i=*n~&ZiuVlOlv&A z_8F;)>CU{zoxJK&Byg%)emL&mll_mVF=h{kajNZFN-l1uScMgq9DRCw)jESpA9bRl z)G-8Snsoy`?0|^E5Y3%Ku#0_{Zx7A`avH?d=~=tjX}6Sds*aBG*2?FzC)U?RNE{@V zB@SAJ-Xj?iQm3}-QXSA)&~C#_K6xL8$qH{)bKa=ta?rBc??N_BbEv3~j-oF`=YnEv z?p8SJ5M^_o{0vfC1moB~%O$Af_WLBiOt;^o>r!GIwgR-UW%JY@zJC@m0eEmS*-M(* zcpQ9wrv|6&Y@@G_Z1xEMDH(zN7t}lyZ2~eGHnb7qn7TmgT zBU@h+zf11=qRxFIW1dDc%}vcc0@-OeRMBQ>I()E=S97X3{ZC0&kM*^;1VeGnnI0XP ztT`#`LpTc<|220&l0RTn)zO*%$#(mVw@RL<*@92|P3yU7v9u6TX|C4*2E}@KA_<;j zQ4kw|e$!`1_YIvEpLAlPEQ{xhvRJLA{-~QWX$O4LgDJRg7`rLW7|MG3s>h}cESIr% z@3CBl0RnWfmfwjXf@fKN1?>_f3UoUCiZdjZa8^P2$eB)z3$GX6h(EZIFiQgMzhV)8 zXqleU0G3kgS8=VndP6+wwe6mcNI2YpMeZJPgIt^0$aqm6H>_%Ra_gkTeVNC#kY`0?>3TMmai{*6!7 z$8MB9hG6Lv($C!NT6hq5JN1AKnH!2nwEZfF3B1TIHzf-r zSZ5z0u3nYa9pSWAFpCO{TcCART|sG-&7RV}L_ER7kGCXm%E*t9leMD_Is-5Boz1Yl zg2%0v1CqphAT^+~>|#ON#y(Mdll^wPN9JpjE=BebC@>Gqsl^9HHPHh>M zrw(inwzs$i^1$3ehzX}XKTaB$T$XGUlKO-zImq^MGNrky~Ww+Dycq6>g4?=ebaa%_MHmBJDSPxOE${;SpBYl zf7YfHcVb8J@O-yDpPB19Vh;QepUfT~{mY9S^J9+{MKkUl=VO>B#KDr4R3@*+;fiT26-^Ye8W*0q&(n2UktI6(d9532ElZg zjei#QDvPF{KmX=yv4#K=N#-0tcfUImR{R{y5wfv1bGV1TVbke;Kh`fp7*oDvenj;jUjq{m_e-kIU}Yko@OYEe`n%Rh(VbP;BoL$-l#zLBIZUF@U(~%fANC(PxzpK zf@mV*Mp)_wI7#NF*y<9&)uP$I6LtSle55$Q-Q*?DhIX+oh+U>HIzk#v4f(|DFxE1^ zM5G10hOgRjL5;^UjDH>CYE72xx+jvR`wM&po#)**KenDu-dPzA*t%2Na;bahlQ(F2 z|AcG>UG0>l=ah*!Yt{04R{gd~H);Q#Di-@D_ZVhU!NnUu3h_sXE%?&zItm7gKt$@q z%tR_@4S0q<)K%lsm~KR>#GXK_H0{<36HZrPV%4XdOo|7powY8^t-mVsJ})^P4u*nE zIDsd+k*~)>!Q7AFFQ}NTQE9QZecj~p+Wi)=d%Up}tRz!b|LBYWm9N{Q$wfg8g=+vW zQ`XC{fC91}r=tCF5p~ydieO?%j0{4~`t^377l{pN9U>(UEQAYXDrf^J~L#kHV}@M;TiW%cq!idT-;Au^FUr8 zwx1bdcVG{U$)PiP`U@=9?gYJm6}EGcCBImuN%`Hq8R>Z=^ImZ@;jTQ;W!_F{_WNQd z*%?&gnRr#MtnKKC)?MZujSB@A#NDLN1`LJ>D%G2_4o1Vv(m~3}HDv%^j!L~*D=6DM zGqDQ{hf3e^T&x_-9&tC<@}k-bjQ)w(Oh@x6xT)pC^W$xFz8uocEd6xOFX(m~og7!i zrd*`zm$)6qilbmf@iq#B;Xe^04TrqH&L7&yR^P?5;6<^fyYI8hE9kpEF6z3tri(Ar zi#nLA&*RQ9UwzScg7ZL8TTz0*ko=1dUB&gfsL~}H9e$2(`@SeNU`hBVGS#RzCX?`A zf*s=}(_NYN2dWQpXbrK6r?G@Bt?IXeNXv2ewt--Gcu(P;h*O~bc)`%fu%^)|0yo-y z-RDvjKSBh-vI}82pkw_85wZLA?hC!Qu%*E!t~lTz)MgAm8A=KXwn;q6GyoRd8z?C~ zH-~mQYA2;4Qm{Ha9B!y-zlcF`Q=kAFEQm}{K}ZNb^gx>o)_WXqM`Zc*pw&~(JiK<1Jt?QF)@+PGX zL}rSaXiv-JlBZ1MO{gbr2fJl#^L!N<2xRx}6WH$ZQt3*LWdGPLe2T%|$yLXK_#2@}Hcqc>+K_BuczdBG(-k?-Pz zgHBOR<|c#>M2hVaY|IFK!I{goWNNb!R~VvzHITT*vr|R&gIJQj38;EU~-^sq$LH_h{a9l_gTtf`@9jmf7;%g z;*kSsVR09PMgng^1(&PhRkDHxGGNzS*=*|eyC~YdPLH{lV_aMie}xM(vV5J$40_G> zAjwkk1>Y{42}XOzYreMM>50d4ONT=-5sTx$nXA9aV4EN(b0J&5f+}qf|6_W7JDi+2 zPAitbYT?&7kt^%HBuK5Xi!Z73uA0tUp3(o}bHeyGOKgJ}og!*$kLZkR2WhPe2LYy- zkBdfY^lPepvLm1eB-`zUAH8D_@vGwSMJmi#0Xecv@2HDtzMg(0FWvVTxi)e^Ql*Gnt;DRa4+XC_}2)!(2aGIESflN6prem}2qG}RzBJ$0( zHbvBJgjX^Xu>zZQ>kABp#o=AgmKw{UWB?h*?z4bpO=eMPoSt6AUx2enVp{orCxhRR zjVWL~-KRh_!%2SOl$p#HDD#OKFO32i1d;U%F05?sg1N>|cq^U#`jxR2zDJA!{KH!8cSN$1 zQGewgs?cZX$dV;?(@+yyx`$=BmjNE$fvc$2$s&avz!k@JD7(5CW#kEB8_1_Fpb})& zi!!^sOiS%fRf=b39)-4~YMm~!WW~-8a6Ey)?h?yQJlk1r2W@0>nMf;b-{*ZsJue%{ zE!wS&uO-ykUKRb6Xgqtu+2Q1ZpIu+4%M4*I+#0Bq9jf4#A`}a`Yn=!UyqB?UXDuBO z=B&!Lu(8_rS@kqjq5t}7@SIYviMjeZ1#|4k-Hf2I6n9jAD3RJcjPGRQL}(7r>R$&^ zZlUbRcBIxy!=0I)l zak{&a22?oUHFvRAUJIpWS`aanztNQtLkDx$vnc!6p+)L+qaHsFH!7&8Q~M4_GDcT0 zFkX)RmkbWTK_RUPg(kZ?R&0#Eq6Vlt%lI-5tN0VWi>5#r6111oIqmsjMcbcbrBOtV z4U9;nmOx66J1cC-D~xukFq>X@>uh{+{EEhdRg~N9QtkhE5j(00#+F>Ff_jE?xfJzX zY3W3+FmhuVNM)wLIP*i(%Y@j2QDIb*sv$&I8Ybm9U}3!q*Te-duM_G^_)FLZJ}EXi zz$h=UEH`UJs-+>+ciIz_X8e^(0PWH--{}n~x}?MrZc-@5tT*QD9RB$@FJODbBnf}DDfYrj#@^cyc3gIGT5-*PJ9Hv^* z#40(RSr*_+9zJBZ!tM5;d5(E)r%3^?Blnxuyg53eSt&CD4pwqylwJ#BTobC#x=}5I zk4?&Dahuz9VIG*Tu9QPW7oM3Sy;JyQ_xn#^h(DrjnKfNjy?KtjrM1HnJ!q`GF= zG1c^1q9^^Z5m{X6t!l>7zSQ@yvP}GM+?I;iY zG$vOFY0~9J3%jf}TPiuhj$1b+(wn_*Zw0j(pAe|nGOdU!j9HGo>GF!3F0U8avl)$F zQPpMu8PLzU_Xbp%lGsd2I=El$XqN)}sn$Nt;3zv134!Mt0?arTCWzFOEnd55@TY)u z5omdB>Ir~B#*A6TE6=+ZsNDi~LBwCs+czv9vMg^h z%P@otIBChE3Fw#rn6>oy3Gu@W1uI3{y@adC04?bkI`rbo?r*dmaB#lDVyqXIh-&ZE zJIsUesu_u5X9sm93wCo>zw;~O4Y`3)cE#*DW{St6M|b_kn$!rU%Z@d9^gPPD`r zYPJnG*?^KEUtA{=ZGnU}kmZoC!5iP4jQZYrdcS)=@4g`#*ESs8*Fb%yeMggS%d9rn zVy`Ml`0xhpM-Q1b2DtNSI>v@!`jXAkG+7wm!IT@(Za&_;(uS{!=kfTC*~uO&MN}C` z+`6b+O{!{xa7Y^pGGO6p?Sx?XjBjO;FwXA5=}zfG$p1&hP#L3LBbM&5xHM$qkCvi0 zR9g^-r=Z(}xA9jgE%bDgOXs@e&aZypqVn=XtM`AbA2=_N!uWIdUFm&P%QqaEn<`3FazGicHxpt9%Pl? zXug$gCtU(Rzx8OlZS3bdFZDi_x_vkOIvxLJijr#(GE+WY_8QI=NoQ(xv8hyQT9FR93g478E&T zAm+8*A*e71vB+a%^Imm(9o^N(Gs*LNSRYC7JiFd-Qz3WrIf%B?a~gN2$7J7J_&SAG z-GP2>OX1KvEk1?Fp3kQIk%D{0ReOu>@Iz8|UoZWUO586zySFxbB!8mg?$ovc6uC=Q z^%v<|Y(1}dk6`Sw1y=pa?pIgvpIg2tHXM@!PwH}|zgnhslC5yXqwy`B()pundajdD z!RgQD;ul=7<)eOklcl%#4XBthko|FK$}OMh>(`Q)e#{dcY{*_o#a0i7eWl2ey9trNs=4;oK6z78R!*h#hMrc z2f|7sYX$t1<$-#&+LZdXplzrP{bS|fg@(OuEXKY92AbaU+_RuCX|VHXpBg8*kRe;T z<(8-NC>RH*527tNvkh)oH9JljstQmwj}FqN8XAlH=9r>001&?+sjV6{!d^$j9=F*P zy@tT|f0kNdIJk{gZy0sYBuw2d$$;HxFv$Ep5jr4O$et+(KS$B4?O zM)X$sy(@Wi8cn^bq{a)UZ#UO9cMY=PVE!xO zKF~M%6Z6WaOsNJX^CwD56UCoR%E&wEQm9g|Qm(}?v89ETiMYtcc^vB_#G;K>nRARO zA!c-#HgXXfw9<;Tdv%yff0IEw*0oLd0^1o&Q(dJmjUBdrzEefs6>;xNt}rWUW7_A5 z$bJ)Djt5U{=NPu!>oEppY>DDTlUp{Dr)kqi!{9g=I`2f6=Qj*KuGn z2vgHY78aEY1TsXS=>v^rks0jfEhI`~&)`YO!!TMW$srmdoC-~Gp8Y$XZ)3VPc4o)0(fbN^3H0#n;C%Mv zlgBR}pU<}E^Yi&f^z4D_eD{6od3w|+!qva7@PopfDdO*PCq$0vD@B>*m5^E8#Z>#-vJrqobjwb zmZfK%Qr(iCroCdoi5AG!K3u)85(+D$PmZiA$WB3rUbf}(s?s2{Fzl*mZnkZ^d@BX2 z6B0pwH~HPKKoK`Cf6&Kx5PY;nYcDOup_go%AEco*K`GWzO{TTLrE_Hwm5(UlSdMyM`M1af*1wK&SO>q3Nuc!+*)0<#Lv9te+a?4{gv9 z$EeYw)(T-u76N+7_J@tx(X-UXII#xG8#;6^X!5UFU%1eAp5X@21K3k5K9Gw6R-&Hc zjm;3sPmRAnTg+)t7TiFYI;%LDB^GC}-9}x(MEwM)Pd1pYbbS)!WlW$pt_jqE^}E{m zMuS{OyWy?WMr8I?xuAg;D`Ci}-Q0W=Hdq0?OewD)$`vam^5QH0jB_?`BujOd!@FyY zM8HkiZd!DMA49FZipJL{voSKW&ca_IMtH>98Y^FR3@krR&2DF7!ol}mq77*HQFy_t z0^)RuU{p%*wMhZ9bDH%BZkz&P31IHcEAu&f9n+rW#_dHAy)W2q|I?IHI3w*P^$h9D z$hTj&zQeAqU$4BD5wklSffJ0;S?VqOV_NuM7>w+&W3ViZcb!g7{Ri5|T>_Edm=y`Y zCpCHzX{>G{Tv$HMiZS5ZRa_tlA0}#PjAxCM6g$8w-dIV9mtwo+W+*oNbQ@T-8%FyKw=7}&dOoW@ zm9RQyfJbM#lbo4hDG@9h)d5jApXzW7C_D2yp`IN@Z%6UUv%Asp5hrXXIGZfxkq!}% z&t5ig1N_Krb`AD~c>>?(X`2b+c!w>uINK;1wfMv>Li1a@eD=G8KoPpPh9&D^nU@>} zsBcAlY`HPV5&7PPeIcQBnjY8dHtGc%KXK@J)}v`34~~f)b@;|ptsHExs@AjrYCi&c z3CnLCQ(Mm&yQ9wEDKVVwkt;k%Tjvw6eSf}+-`fuLjCQ4-binvi)iL~;U({*Ov;S&8 zGHgauuStDOds|x8AG4l?VF6vdZd6oMFn_q7T(Y|nv>tQ{X2&87(?#7Y{rR6S&I_D` zqB}^tHf#eMKj{C4j z)($rVJWs!GC39Vdd*mi!1AWhh-DnT_yd!FMKN^sSPmv0yiF0zWKugwWzZcsF!uD^{ zCaT)O>vU$F1k(GQ1c)xP!?^DPfO%cM<-xNj3pT&dt;x0F#yw+J%a}PekCAIUa$rw( zwVq{$xXB`Ct?+&-qf>S! z`6T0aWst|9rca7%;_lMrb8#@HA^aij=&hT03rjF%K{pj_{ciNzGOFe*YXrwg%OnbTW_;+JG5Ha8#7o)S6uv0%X56zww zIht>*K$u-++;{-=7+7#UN(}r&codnj|n{@SY@rJv% z3SqXOtC-OBkG8rJ$MX0#TQZi(=J-0xf8v`0H_02hX`VYz&3AF4(5hRVQl6FWH<@z2 z0wjs$W|L_$41%!}{`4155O(KbqKW+hju5(Ud6KgYVYCOdTHA4&gv5v*xZ9;EHI=;K zQ?Ff<7gfcv8-ukDKRHfbF=}%o*f_@Aw}hy1b@>v;3$o)?>U`CrjWq zjz^PMMY$w$G78jcZ}ukk=tMh3kJ%BMK7DgkWxpdI$>oTiOdy57SQWS9iqRf*$>U^G z7p5?`25vq7I^p{LHBg^>T;9fK`c_)hL`$~2Ug>2X2b71HycLL_e)xGY z+2)qOwul2NJ)oKO!9R3TevFfteZsYDzB9cO2d4LlK%1gg$D*<2d3EwZL=AF}Gamt5MDRkn@; z9pnY0iCN+M759I_e!~pp!pD3b3O^$@OzivEL19{@>Wz-sexCtrnD?3T{qy@Gz&uyvez8YptmM_XrG8%&_gTBA5zY}eWRTD8s zny}okGlE*`&YHaTtCAJwduBuWM@ffX&>dH7Wy^Td&%T|C!e+IZ6C z@pq~3uaS#83QgGW;7UHMBQC*OvhJ80NQHROj(GC#5D*<(p3TJE9W7>QGLMdj(TS?- z_|DEvhqB&eRrV@dWpt(tuCnDa%>!k2BRxBa)uxYWPbI$i`8ru(LLz4U1x?DIcs$0z zhoe#8Lb%i((-doDn+B-6oH8jU4k4uD+U(K%NHp@%ka*n>G&D{$t{XC*)jjUHalo4g zBWz7i$3XW1{_u#X^hn}=!a{x;$g~Q^hH?g0&oN@oagv;UI7x=_qbQKA%)-MA8=Rqh z_#NP;4o1+it8yCJ+;rm2kpoJk_u;_%$mD*|^MS4-rw6z^+NHnakPi3f-8^I*RxkPf zoX6Gsr8DCOT)EL1`v+4A&JgnDBF%t|9LQ1)hIMzo*LJ?okBXzsQFR0;B8QSjD7D}i&2ng2gL>IHZ<);9~nM6Y@^Jdf& zXN@;eDCm@yI3}zd2G~jGs$Qt(f^K+MfKU-p^G_4TpxGiG@(c)cVk_=qXs3J{oCf1u zjI9l9*Z3~Uvun1Sd`9GuFW3tOW_}5z_x1O9$aaX_>Sx!u8sZ8shca6}rfthyKjCcryHE3_|KK^`w#=jNr4W7Tq@_EX5Oe7> zTd3(mTr$hS7wfA;Y%41|WsAQ;wk&S>(eKYVz$vbZ;+mV0tybSO`Ox{LSUUF{`pvy9 zi`VH_8O)5b>#S~`HHmmIcpHZIH*ecLmNjA`^Fd1)_MfeL&AmAYaYP87%8}kV->>ZX z9{xov)c9A*&|8UKEyU0x79r2Fi)p*!M+rtmVw9xInP>fuq>U0i>GWo<_+A^wp%nR9|Bw=>w&bZ z8c4gS=R5+fGBzDr_-wCY!FZeV2Wr+M2Xp%h%PDevtY4B-#l zN44sn^K2UE1MWlR7sjB7v735_M{J`FpNp=yk_8~~6@Q3h$iN}w(@fWjrWAF*MGj9G zY&Wcq;$Ajr(`6_&4jbf-Hw{d5q)Rcorj*Zo5`=}J!%d?B0wL*g&Fn@bVow@pSjpLD zZNRwJ#IMz=vKm@5D;z0K{7V`->`8NSS3O&)=5?HQ$gbLC*UXsSX@L{+5zmFY=9}?o z*E28f&tw;Aj>0v66){;5C?gr8OMQmcJg!p^A1&OKk_`)5E27-)SK-rXgJZJxglvTu zk%kBu0C9{Cj5QrJppnZd=kI9oBYOb@rGJke@$bl9UkV*jH~&Cf*sAqXfjqmPS^+! zc2uI(8VJ-Ko5gl<%US!wuFo%S)0Fm%I@;&vl+bQSw6h0e0;4VJu~m9)e9|bFb(|X; z(uzhj&UiDBn+E7h%vc#)t%_^oTmy_#tUT%aR)-l`*gkH71 zHgmdjZgku2FCV6Aq)z+aX(J8E*67BmheOk^M@|1n59?ub=jT_|>00YV-A9cPqd3Hy z{6*cU7#o9D+BCOr82ftFzL%I(yNC}g&fIhlGsJc{nZ$S2N29epo9F=sq>C9@RMfGh zFtN$;c$UgQ89XtaSat>dZt5pREETivqz~i;%=LIL#WD1N1JZytw>_RgeBN+Z+WfnZ z5WuFl?guVeyRYsL$?@x`U4Q26Z^sQO@fyJ|ha8=p9cUxXExe$$?v0~7=1uUf-Nsh6 zvC{Z~XG_>uE9+v%)Z`B5tYn{QV0DX4s{8Kv??=L36f{5&`SROm(a9snu_xef11{_0 zP24#(t7b$X=j4E0wc6B*h}nYn_FBMc1vqyLMB6Q3Y!N+XP460%^#=~h-ja6TyAAkR zHo|{$EMi0sb5{bDzN#OaGxO6D(4PBVgv*+kS}%y%($tx~O>UA^r0?r&fe4$8?BJ?) zLiz3se^(ig0e}+tf};fU=kd6UNf&6+gDRlVI_F+iOwZCnXq#{dskc855EBVv4d6xJur zLl!Mcy;ssdRonX0Jf}fBrhSl((>6qa6LA$W3s!IznImrcDNS#pgJFi~@9jjVYBYzP zMl0gMY7RdYSVzZ|jXNL!8U?~GtgEr-B7k$vx^^GZN%Kxyhw~A5r-UgSjrLEN&t&qUI5P3W>Nyi zRB8zYn3PI&1Ds8qX-jHEyog$p>As6NZo{{vdm8cQ>eL>N)<@AYQmuF6y{z> zL)TAnZR%sfe(Lz>`YEn0+0@VEuG#Xg(=u$R!A2S40h#o8r6g#K+iHZfTtPr?H(JLF z>20m<%#Ja>qb*}R>s!fkglU$$pnI4lmC`5(pQWr=Lh(wS@08BHO&|c*qocgYPBn&q zm_g>V)ZgsBX`5if9G<40yW!D%^KTi^%ztDOF24>cXfRGuHMRVH@t$ zTHukEI5=M!S+TnGMa_I-zOfjm!NnW!SAjH_4fS&wGl*iD@0I202bbaiSrN5_p8~xx zu{SZ)pNSLlNx3)fZrglA+ZTcqsOHIVsMbBZci*$-qoX6tQ4@uVE2#%8tIt@rBvjN6>i-`-)$APe;EW%R={1;wMp{h>lm@Hk$-^n$EBy^g%aS&o|K-i#o z%JNM*xdbrE5+v#7@bHFVdmZ6J83Btq+{As67b7{Q_>Y%S<7six4wwje{IRjyif32$ zS~ZtHJJ-L=l^*&PSI^jKa6pk}>NIlLCXz?E=nII$A5Ll88Hc67*>kYmc5EHme^u}I zO1^@>Tj=T@@v1*a&jlodES%ghA|z8sXEI$ikwJEm?uHcyo3U@G z;!Va7lPsuS&3As4K-_J|Qa(*D$JWrHZ&Ewyn(x`OvKcb>&8hq57x&Gh`HrKr9Gt3U zght;?P02J_08@GiNMC*ujc?pAc7{5rJ7bH1PJxiwd=MX8M(XnL&>7ZlpW2yux!vlK zR4yc?p+QtXcM&M8k4P#{=a9=O*2#E8FV-|8klzhjgGIE_B9=>bJA`!0Jkh`Lhz@D< zhTOJ;?oIvEgdx#sH1=OG2bda@Z(<>c-u2RLnD}?y&!;WUdVFVg;V~T%4(PO6BM?0_ z+iAo3riQte_lU@P!xpsl&fyzqYc4J>rln<*@LphpMxw*K{ zXU+5ZcuyM3_#16sDHNG%&9Qau_M)#iLLU4Zi`A0enhsITrMqX`gq)BX&%cel3_0j> z7OgmR`UT{RyOwnNA|Vo4?8ii4uEY3Bz`wmhY(cH3S0fW|2U8BGO=fTCG-Y(w^-hq$ z;j1I>Iw0X%K^XT?dI{^uy{fg4bdK%_V&7^w7H?|d<7k3&p^Ln8k>y!+6^JngI8c~; z+BuXQ%lkM{*t{f2D)*cdYc$aUQ0ZR%UL{fcM3hnMta((Q0Y8!(8)>;y2#{fF(}`!0 zu`4^6HEh2&ET5L4N_Da(f?z-Pg7g^Rg0!CyRLx%8J^>|S9=EcQKY4zMXJ^TwU-2*3 z`S36aOZIQFNWH9BExQTVbz}N&J`ypGaiO2oM@N$g=J?FZ9vCnYTUCC=l@$gfRq%)Jp|37~ZnTA^~&6m^TBLG(jm2#88zTS7njz?^G`^00bcQ zEHRNa;d#>BNpl%tn~2cyTTh9$z3o>zpQVrw<2$LXcjFKz>kXh^ z?IK@ku9-_E?4uIK(o>zggyJGc_;z#A*?>G#W7tLX1RBfwy%uC~8#;E00BhWt64lvN zXjUt#;wJzsqEwm#R{ZdXH9z7e=tnOk1{xmgmPQJs_gUVUNJ$<$e*Vp-c3yB!@-VWVWBJ8or1(@0u=0ddNVp7x0!Fr8C?Q?U$ zgVU^4I=!3%0?nLQjFgk%2FN$F!K#oi=3JkjNy<#g%u}V}q}OSk?OBLQz&qzLxgF0x6ljwNJ zlCOR=DdMI)R>)k}>W%145m5qR)<0uM{E5#$;l;h`eM*ird$s4P!Qc5KafX|(_J;iK zRL!?8XpYC&*kPhqh-DuAJi<@Z32730vEnS?2$*_^Q;pR?sACuT5En2(jdgEmJ$B1M zS9I`B1P_pH!!t~;O{{g-iH&wmCh~N_&-|Xja3C&-F>lLUL%)*tM`PYrN71w#hpkwM z)R-YKQgX@U(q^LJnm7v+7#$gCp@FPkM5akhEh4GjXw00j>4CAtKDlcfR*5~cH$|y@ znYj|gS`3rTJlD%T)zi0$J=7B(QipKYY2#c_)%HxowgQfQO09qpvZJ=BCDJYvaW*S~ z(ci_Fl3nJyqtuR5z-wsdc$lh&Z62Ga9 zxuG4r2|v5XJGM24t-%n_cKW!OEB;sFfbqOZbS~3^Cyaid!R1T)3BS?`U>@JC(7LUG zVcBZLe8eif)d`a=-r!NA4}Re|+=ZzdaAh88FWW)jC|sYo4to9q*QP9PDA83?aWsp- zF&lsF=HTl^(rB8F`<(gxinYSeu06#1e&Q-t1@{wIANl?r#MN4NG5MVrVf~$wVWFqYoNJD58t2MrEIwSo}?{hczs(cQLf~bSef@*$h1iy zT>ID{*}<}yT8A_CP8+|{2gKB(7f}z~b{{grVwqk{N8_VY&@SCSB$@R33cn^ z_bsJ;ywanE@W5%Z{3c($g)d(6=1X2F=&5wI(q3iy?ptj$L7x=2^eV^mVx_M(Rr*!3 zri%-hjC`zZWQ}LZr%Q>Q;2zIfDaDaQ zEQ)vV@}=D!UcL-eY2f)i25A4#ms(U@Llfo-oBe#5SHh|Qu##?9f50*7kUGXhOfeCS z53;}!l{z9Y!|Xcif#!Co*TfUdSXmc#w%hn12gX_A;M6di&xwaTFHbI82U|KGG}W^_ zO-i%W;yhWod1skt@lBZbP6BH|+q0;RzP*mKY3|KZJCUhYVHAytc?K+&Rqr$bfv5El zFWQTR5l^*kN!jVwrkN_h5O3C?3Nz_fm?^t(WUqC=Rhx$>Ht32kjUpX2-?`~FcY2B zXN^tuAgp9H-g|P2x<)Qw!~t77zhEaQh6_yD-%L23J^5-#M-z3uVs6}Lrjl5Tt&X%d zTZ1fDal&$iF~>Perp54dY=!CKc~P8=rkgRnV*AsLv78F!W+9)P7HpjjD@t9uymlk^(3DLMNSJy zRvBz^m?VD+w65b-u@Gy|UlC{-5pW$lY4sRndwK$@&BrJ@G9f$DorjkGT=Bsa!XBkP}Ps`%^Ie*V5Ia+`xZ?0Fw)ieNiCNmKcQCqbzw)*(( zi{uidDGWHTGA&CwngJIbuyO~vxb)y*7(C0VBZ!nxW5xrRa8EVO&K>0GKJx7WChm-U z<2)xq1yqt+jO;(r;u0NQg@3jtvJ2v>z{37(e;E6s3QZa+x6nAQ>aH79t;YejiJ%+L zsO3-QY8h{AWK|8luCdz3sk(AsTKs=b(ZsB5g5MIo!gv?)MV!P8e)dE`=HPM)|Jk}f z_(UJDmqXK*CP+2bEUk)V!!{qY>CiF`ui~XsGVB0gF9JItiNFh^73aILoMkZGhf75} z%e}$!ma1zyLZ^Nz#)g8A%ju)>2g>P)*oo*&&zq>8v6E=}C*$~vsLq6b)2b*NHAf;_ zNa!8#Jr;L!md?jMX;p0f(-Y%W$0nAjy?O*}FjjrvKo07?06-v=+(Z(jo3{)~EI8~7 zFT62Aa+|@fhD$IUMO-*rO*APcttUEgbir|q>G%n^@OCJcClTTYbGpO@B817IWc3qG zgM#j}G}>iuMA!8!(}7&meUV`=;=)7#IX%m!)p%ipG^0VGjk8<4Gsv!FGdFPrizX5i z8x~977LbqwLi_NrfE%!Vb9neb%)9L*@IJA@?o3F*b{w?EoLyS8#89U_!PTH1U05R` z9kaH1pbMoQXT2!A=MR8Hz1>okiS0(%WIYe4vOqnQW`y|ViRnZEw=12hvu_9x0lFu2 z`Pa}SP+?(o@0Weya^&NlO6X;knA#?cg=?eJns`vilb)}yXrF?VY=8>yw z_!eO0X%j8J?m8_K@irV?TUkx(;5SW|=wO#Ic^f0kVK5^mptBX!MobM{;{arO9;jMC zXtX2%A|zsZ^p~`LIF=c*PTQ7BX=ID4IVXs^Eusxj;jZIe4jT3mS>LNzL^2^A-zMeE zK+VqMG)D-%AHIJEyf!*||(<|DMk^ zx{P~T%O|pmSRHei1FQ6nF?w^Q1fb8K)eVTXyj_^s5eK&x;F`w3Z=dJdL)q{pTh4X~;QylIHzM1sT~;rmu*u{Pod@h|%|S z^&iI%i9|i4t8g|woJTL?*}o6x4^PxjOn#0ZPKlu%oY(V*;q2eYasH5~)8(~#s>#zo zKYg+N?9<1efNOt%XXhv9CnxIT8V(>Y`QP8`ICyvx7~jm`A+d%(_gIW1F4XW3u*0%9-~;Y1glKsJ@NfzJYkHd=wvW-970>_@?gjiG(_~LKrgoNBt**|1}ZF!YnNzo z8%LUG+QIW7I zb!$7m+mx%Z$%R>)fR;i)?9G=29Tvx867Y)7v|Hj8@&6H>VM}cE$HOBo69{*_-(&0F z-eyaVgZ$t`=+39wVSP~$uP9-TI2dbLz%PQMs4&dh+kBw|r{mboaRh<-PIH#|z>_ye zx3{-P)S1^uRAt%ZmXiSj$O0|phZj$e{xeYUwt#;vyT1KiOFR*gGOV$A1rmrrp5QW2 zZ*cFGbiGmoE0|EfR*bIcB)}7$;@9LR(XnB6rtVZa@;o_zML*}SPNYb>#qWvaM|b$8 zx6r9ov`<&*(=1&r^~ZsE`14m^2D%mI5s+j}wal~6pMUeU)Ziv9Ywi5URSd==Z4p_^ zfZNQmc=;B&1Y>+H(i#024Iewwpq+ANwaghaR&RjlwzIQpv&YDyp3=(U#nW0ZICYHw z$JgC^<{k8w-2UF((#sOqHNR0xaA=lTTHR+HR70yz_hpkBmxP{_Z1UgKOd zQnU`g*Yo2udfp0LWqIo>19^D|%p-lEuH&C-@%>y!u%hpTz<^R{9*28hc{m33?9n{h zA+%B2lXT~?8?~?-wdMmAbf;*_RAd4Aychu&M#W{EpsheY> z1#yTl%6z%q>b)d_wWHs?o0AeuqGHnoCm$I*NW0by;ALV5d|J-WN5LrhLyDLGPpKp1xsVNlko(V~|*gR!;m*_JQTkx+CSM328|67zWG>>lzCC zd|~VXl`|4fwHob6><<}=x){dcW8DE4(Ui`(<6s&@Lp^rdT2QAKDIm3v*ko*77x9Iy z-LqPviKwDK!{B8c41cYUq3Ib8hlN?F7jl_h7`{+&7F1Oz~(6TkqwR;=&7o{^edcnrZUIvls z``|HikAX{X=s1AtXufjhznM?>z8T`&z}0piPqCd1f3JtZWbj)&Iv$+{5IT*UYy{

    %p(~v-?2G3wWjfAvc!JBVE8PF*yQ7cE|$lGgu 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

    K89ZVU-6b;JSkl*Uw~;OQX0 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 jRwg$^1P_6Cip<@I{QG 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.7.3http://parseplatform.org/Parse-SDK-iOS-OSX/api/docsets/Parse.tgz +3.0.0http://parseplatform.org/Parse-SDK-iOS-OSX/api/docsets/Parse.tgz diff --git a/api/index.html b/api/index.html index 26ffd9c7a..49f09c51d 100644 --- a/api/index.html +++ b/api/index.html @@ -20,27 +20,27 @@

    - Parse 2.7.3 Docs + Parse 3.0.0 Docs - (93% documented) + (94% documented)

    -

    +

    -

    +

    - + GitHub View on GitHub

    - + Dash Install in Dash

    @@ -48,7 +48,7 @@ @@ -234,6 +234,12 @@

    iOS · iPadOS · macOS · watchOS · tvOS

    Coverage auto-release

    +

    iOS +iPad +macOS +watchOS +tvOS

    +

    SPM

    Backers on Open Collective @@ -249,13 +255,7 @@

    iOS · iPadOS · macOS · watchOS · tvOS


    @@ -274,27 +274,6 @@

    Getting Started

    Take a look at the public documentation & API and start building.

    -

    Alternative Installation Options

    -

    Compile Source

    - -

    If you want to manually compile the SDK, clone it locally, and run the following commands in the root directory of the repository:

    -
    # To pull in extra dependencies (Bolts and OCMock)
    -git submodule update --init --recursive
    -
    -# To install bundler
    -gem install bundler
    -
    -# To install all the gems via bundler
    -bundle install
    -
    -# Build & Package the Frameworks
    -bundle exec rake package:frameworks
    -
    - -

    Compiled frameworks will be inside the build/release folder.

    -

    Add Sub-Project

    - -

    You can also include parse as a subproject inside of your application if you’d prefer, although we do not recommend this, as it will increase your indexing time significantly. To do so, just drag and drop the Parse.xcodeproj file into your workspace. Note that unit tests will be unavailable if you use Parse like this, as OCMock will be unable to be found.

    How Do I Contribute?

    We want to make contributing to this project as easy and transparent as possible. Please refer to the Contribution Guidelines.

    @@ -314,9 +293,8 @@

    Dependencies

    - diff --git a/api/js/jazzy.js b/api/js/jazzy.js index 1e55d6ef0..198441660 100755 --- a/api/js/jazzy.js +++ b/api/js/jazzy.js @@ -1,3 +1,7 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + window.jazzy = {'docset': false} if (typeof window.dash != 'undefined') { document.documentElement.className += ' dash' diff --git a/api/js/jazzy.search.js b/api/js/jazzy.search.js index e3d1ab905..359cdbb8b 100644 --- a/api/js/jazzy.search.js +++ b/api/js/jazzy.search.js @@ -1,3 +1,7 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + $(function(){ var $typeahead = $('[data-typeahead]'); var $form = $typeahead.parents('form'); diff --git a/api/js/jquery.min.js b/api/js/jquery.min.js index b0614034a..7f37b5d99 100644 --- a/api/js/jquery.min.js +++ b/api/js/jquery.min.js @@ -1,2 +1,2 @@ -/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
    ",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},M=function(){V()},R=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&U(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function z(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&R(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function X(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function U(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,r.msMatchesSelector&&ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",M),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Re(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
    ",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return M(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return M(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.on("mouseenter",e).on("mouseleave",t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 00){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); +!function(){var e=function(t){var r=new e.Builder;return r.pipeline.add(e.trimmer,e.stopWordFilter,e.stemmer),r.searchPipeline.add(e.stemmer),t.call(r,r),r.build()};e.version="2.3.9",e.utils={},e.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),e.utils.asString=function(e){return void 0===e||null===e?"":e.toString()},e.utils.clone=function(e){if(null===e||void 0===e)return e;for(var t=Object.create(null),r=Object.keys(e),i=0;i0){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); diff --git a/api/search.json b/api/search.json index 4b43a593c..60ad507bb 100644 --- a/api/search.json +++ b/api/search.json @@ -1 +1 @@ -{"Type%20Definitions.html#/c:PFQuery.h@T@PFQueryArrayResultBlock":{"name":"PFQueryArrayResultBlock","abstract":"
    "},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    Sets a custom file upload controller that uploads PFFiles using its own policy.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    A custom NSURLSessionConfiguration configuration that will be used from the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/PFUserAuthenticationDelegate.html#/c:objc(pl)PFUserAuthenticationDelegate(im)restoreAuthenticationWithAuthData:":{"name":"-restoreAuthenticationWithAuthData:","abstract":"

    Called when restoring third party authentication credentials that have been serialized,","parent_name":"PFUserAuthenticationDelegate"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)parseClassName":{"name":"+parseClassName","abstract":"

    The name of the class as seen in the REST API.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)query":{"name":"+query","abstract":"

    Create a query which returns objects of this type.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of this type with a given predicate.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Lets Parse know this class should be used to instantiate all objects with class type parseClassName.

    ","parent_name":"PFSubclassing"},"Protocols/PFFileUploadController.html#/c:objc(pl)PFFileUploadController(im)uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:":{"name":"-uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:","abstract":"

    Uploads a file asynchronously from file path for a given file state.

    ","parent_name":"PFFileUploadController"},"Protocols/PFFileUploadController.html":{"name":"PFFileUploadController","abstract":"

    A policy interface for overriding the default upload behavior of uploading a PFFileObject"},"Protocols/PFSubclassing.html":{"name":"PFSubclassing","abstract":"

    If a subclass of PFObject conforms to PFSubclassing and calls PFObject.+registerSubclass,"},"Protocols/PFUserAuthenticationDelegate.html":{"name":"PFUserAuthenticationDelegate","abstract":"

    Provides a general interface for delegation of third party authentication with PFUsers.

    "},"Protocols/ParseMutableClientConfiguration.html":{"name":"ParseMutableClientConfiguration","abstract":"

    The ParseMutableClientConfiguration represents a ParseClientConfiguration object that can be mutated.

    "},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInternalServer":{"name":"kPFErrorInternalServer","abstract":"

    Internal server error. No information available.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorConnectionFailed":{"name":"kPFErrorConnectionFailed","abstract":"

    The connection to the Parse servers failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectNotFound":{"name":"kPFErrorObjectNotFound","abstract":"

    Object doesn’t exist, or has an incorrect password.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidQuery":{"name":"kPFErrorInvalidQuery","abstract":"

    You tried to find values matching a datatype that doesn’t","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidClassName":{"name":"kPFErrorInvalidClassName","abstract":"

    Missing or invalid classname. Classnames are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorMissingObjectId":{"name":"kPFErrorMissingObjectId","abstract":"

    Missing object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidKeyName":{"name":"kPFErrorInvalidKeyName","abstract":"

    Invalid key name. Keys are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPointer":{"name":"kPFErrorInvalidPointer","abstract":"

    Malformed pointer. Pointers must be arrays of a classname and an object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidJSON":{"name":"kPFErrorInvalidJSON","abstract":"

    Malformed json object. A json dictionary is expected.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCommandUnavailable":{"name":"kPFErrorCommandUnavailable","abstract":"

    Tried to access a feature only available internally.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorIncorrectType":{"name":"kPFErrorIncorrectType","abstract":"

    Field set to incorrect type.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidChannelName":{"name":"kPFErrorInvalidChannelName","abstract":"

    Invalid channel name. A channel name is either an empty string (the broadcast channel)","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidDeviceToken":{"name":"kPFErrorInvalidDeviceToken","abstract":"

    Invalid device token.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPushMisconfigured":{"name":"kPFErrorPushMisconfigured","abstract":"

    Push is misconfigured. See details to find out how.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectTooLarge":{"name":"kPFErrorObjectTooLarge","abstract":"

    The object is too large.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorOperationForbidden":{"name":"kPFErrorOperationForbidden","abstract":"

    That operation isn’t allowed for clients.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCacheMiss":{"name":"kPFErrorCacheMiss","abstract":"

    The results were not found in the cache.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidNestedKey":{"name":"kPFErrorInvalidNestedKey","abstract":"

    Keys in NSDictionary values may not include $ or ..

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidFileName":{"name":"kPFErrorInvalidFileName","abstract":"

    Invalid file name.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidACL":{"name":"kPFErrorInvalidACL","abstract":"

    Invalid ACL. An ACL with an invalid format was saved. This should not happen if you use PFACL.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorTimeout":{"name":"kPFErrorTimeout","abstract":"

    The request timed out on the server. Typically this indicates the request is too expensive.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEmailAddress":{"name":"kPFErrorInvalidEmailAddress","abstract":"

    The email address was invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorDuplicateValue":{"name":"kPFErrorDuplicateValue","abstract":"

    A unique field was given a value that is already taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidRoleName":{"name":"kPFErrorInvalidRoleName","abstract":"

    Role’s name is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorExceededQuota":{"name":"kPFErrorExceededQuota","abstract":"

    Exceeded an application quota. Upgrade to resolve.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFScriptError":{"name":"kPFScriptError","abstract":"

    Cloud Code script had an error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFValidationError":{"name":"kPFValidationError","abstract":"

    Cloud Code validation failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorReceiptMissing":{"name":"kPFErrorReceiptMissing","abstract":"

    Product purchase receipt is missing.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPurchaseReceipt":{"name":"kPFErrorInvalidPurchaseReceipt","abstract":"

    Product purchase receipt is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPaymentDisabled":{"name":"kPFErrorPaymentDisabled","abstract":"

    Payment is disabled on this device.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidProductIdentifier":{"name":"kPFErrorInvalidProductIdentifier","abstract":"

    The product identifier is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductNotFoundInAppStore":{"name":"kPFErrorProductNotFoundInAppStore","abstract":"

    The product is not found in the App Store.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidServerResponse":{"name":"kPFErrorInvalidServerResponse","abstract":"

    The Apple server response is not valid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductDownloadFileSystemFailure":{"name":"kPFErrorProductDownloadFileSystemFailure","abstract":"

    Product fails to download due to file system error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidImageData":{"name":"kPFErrorInvalidImageData","abstract":"

    Fail to convert data to image.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUnsavedFile":{"name":"kPFErrorUnsavedFile","abstract":"

    Unsaved file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFileDeleteFailure":{"name":"kPFErrorFileDeleteFailure","abstract":"

    Fail to delete file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorRequestLimitExceeded":{"name":"kPFErrorRequestLimitExceeded","abstract":"

    Application has exceeded its request limit.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEventName":{"name":"kPFErrorInvalidEventName","abstract":"

    Invalid event name.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameMissing":{"name":"kPFErrorUsernameMissing","abstract":"

    Username is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserPasswordMissing":{"name":"kPFErrorUserPasswordMissing","abstract":"

    Password is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameTaken":{"name":"kPFErrorUsernameTaken","abstract":"

    Username has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailTaken":{"name":"kPFErrorUserEmailTaken","abstract":"

    Email has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailMissing":{"name":"kPFErrorUserEmailMissing","abstract":"

    The email is missing, and must be specified.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserWithEmailNotFound":{"name":"kPFErrorUserWithEmailNotFound","abstract":"

    A user with the specified email was not found.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCannotBeAlteredWithoutSession":{"name":"kPFErrorUserCannotBeAlteredWithoutSession","abstract":"

    The user cannot be altered by a client without the session.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCanOnlyBeCreatedThroughSignUp":{"name":"kPFErrorUserCanOnlyBeCreatedThroughSignUp","abstract":"

    Users can only be created through sign up.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFacebookAccountAlreadyLinked":{"name":"kPFErrorFacebookAccountAlreadyLinked","abstract":"

    An existing Facebook account already linked to another user.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorAccountAlreadyLinked":{"name":"kPFErrorAccountAlreadyLinked","abstract":"

    An existing account already linked to another user.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidSessionToken":{"name":"kPFErrorInvalidSessionToken","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserIdMismatch":{"name":"kPFErrorUserIdMismatch","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFacebookIdMissing":{"name":"kPFErrorFacebookIdMissing","abstract":"

    Facebook id missing from request.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorLinkedIdMissing":{"name":"kPFErrorLinkedIdMissing","abstract":"

    Linked id missing from request.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFacebookInvalidSession":{"name":"kPFErrorFacebookInvalidSession","abstract":"

    Invalid Facebook session.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidLinkedSession":{"name":"kPFErrorInvalidLinkedSession","abstract":"

    Invalid linked session.

    ","parent_name":"PFErrorCode"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelNone":{"name":"PFLogLevelNone","abstract":"

    Log level that disables all logging.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelError":{"name":"PFLogLevelError","abstract":"

    Log level that if set is going to output error messages to the log.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelWarning":{"name":"PFLogLevelWarning","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelInfo":{"name":"PFLogLevelInfo","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelDebug":{"name":"PFLogLevelDebug","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyIgnoreCache":{"name":"kPFCachePolicyIgnoreCache","abstract":"

    The query does not load from the cache or save results to the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheOnly":{"name":"kPFCachePolicyCacheOnly","abstract":"

    The query only loads from the cache, ignoring the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkOnly":{"name":"kPFCachePolicyNetworkOnly","abstract":"

    The query does not load from the cache, but it will save results to the cache.

    ","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheElseNetwork":{"name":"kPFCachePolicyCacheElseNetwork","abstract":"

    The query first tries to load from the cache, but if that fails, it loads results from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkElseCache":{"name":"kPFCachePolicyNetworkElseCache","abstract":"

    The query first tries to load from the network, but if that fails, it loads results from the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheThenNetwork":{"name":"kPFCachePolicyCacheThenNetwork","abstract":"

    The query first loads from the cache, then loads from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html":{"name":"PFCachePolicy","abstract":"

    PFCachePolicy specifies different caching policies that could be used with PFQuery.

    "},"Enums/PFLogLevel.html":{"name":"PFLogLevel","abstract":"

    PFLogLevel enum specifies different levels of logging that could be used to limit or display more messages in logs.

    "},"Enums/PFErrorCode.html":{"name":"PFErrorCode","abstract":"

    PFErrorCode enum contains all custom error codes that are used as code for NSError for callbacks on all classes.

    "},"Constants.html#/c:@kPFDeviceType":{"name":"kPFDeviceType","abstract":"
    "},"Constants.html#/c:@PFParseErrorDomain":{"name":"PFParseErrorDomain","abstract":"

    Error domain used for all NSErrors in the SDK.

    "},"Constants.html#/c:@PFNetworkWillSendURLRequestNotification":{"name":"PFNetworkWillSendURLRequestNotification","abstract":"

    The name of the notification that is going to be sent before any URL request is sent.

    "},"Constants.html#/c:@PFNetworkDidReceiveURLResponseNotification":{"name":"PFNetworkDidReceiveURLResponseNotification","abstract":"

    The name of the notification that is going to be sent after any URL response is received.

    "},"Constants.html#/c:@PFInvalidSessionTokenNotification":{"name":"PFInvalidSessionTokenNotification","abstract":"

    The name of the notification that is going to be sent when any request is failing with an invalid session token.

    "},"Constants.html#/c:@PFNetworkNotificationURLRequestUserInfoKey":{"name":"PFNetworkNotificationURLRequestUserInfoKey","abstract":"

    The key of request(NSURLRequest) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseUserInfoKey":{"name":"PFNetworkNotificationURLResponseUserInfoKey","abstract":"

    The key of response(NSHTTPURLResponse) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseBodyUserInfoKey":{"name":"PFNetworkNotificationURLResponseBodyUserInfoKey","abstract":"

    The key of repsonse body (usually NSString with JSON) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFObjectDefaultPin":{"name":"PFObjectDefaultPin","abstract":"

    The name of the default pin that for PFObject local data store.

    "},"Constants.html#/c:@PFParseInitializeDidCompleteNotification":{"name":"PFParseInitializeDidCompleteNotification","abstract":"

    For testing purposes. Allows testers to know when init is complete.

    "},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    The custom upload controller that synchronously uploads PFFiles using its own policy.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    The NSURLSessionConfiguration configuration used by the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(cm)configurationWithBlock:":{"name":"+configurationWithBlock:","abstract":"

    Create a new SDK configuration object. This will create a temporarily modifiable configuration, and pass it to a block","parent_name":"ParseClientConfiguration"},"Classes/Parse.html#/c:objc(cs)Parse(cm)setApplicationId:clientKey:":{"name":"+setApplicationId:clientKey:","abstract":"

    Sets the applicationId and clientKey of your application.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)initializeWithConfiguration:":{"name":"+initializeWithConfiguration:","abstract":"

    Sets the configuration to be used for the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)currentConfiguration":{"name":"currentConfiguration","abstract":"

    Gets the current configuration in use by the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)applicationId":{"name":"applicationId","abstract":"

    The current application id that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)clientKey":{"name":"clientKey","abstract":"

    The current client key that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)server":{"name":"server","abstract":"

    The current server URL to connect to Parse Server.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableLocalDatastore":{"name":"+enableLocalDatastore","abstract":"

    Enable pinning in your application. This must be called before your application can use","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)isLocalDatastoreEnabled":{"name":"isLocalDatastoreEnabled","abstract":"

    Flag that indicates whether Local Datastore is enabled.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:containingApplication:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:containingApplication:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)applicationGroupIdentifierForDataSharing":{"name":"+applicationGroupIdentifierForDataSharing","abstract":"

    Application Group Identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)containingApplicationBundleIdentifierForDataSharing":{"name":"+containingApplicationBundleIdentifierForDataSharing","abstract":"

    Containing application bundle identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)logLevel":{"name":"logLevel","abstract":"

    Gets or sets the level of logging to display.

    ","parent_name":"Parse"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)currentUser":{"name":"+currentUser","abstract":"

    Gets the currently logged in user from disk and returns an instance of it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)getCurrentUserInBackground":{"name":"+getCurrentUserInBackground","abstract":"

    Asynchronously loads the currently logged in user from disk and returns a task that encapsulates it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)isNew":{"name":"isNew","abstract":"

    Whether the PFUser was just created from a request.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)authenticated":{"name":"authenticated","abstract":"

    Whether the user is an authenticated object for the device.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)user":{"name":"+user","abstract":"

    Creates a new PFUser object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableAutomaticUser":{"name":"+enableAutomaticUser","abstract":"

    Enables automatic creation of anonymous users.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)username":{"name":"username","abstract":"

    The username for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)password":{"name":"password","abstract":"

    !","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)email":{"name":"email","abstract":"

    The email for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackground":{"name":"-signUpInBackground","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithBlock:":{"name":"-signUpInBackgroundWithBlock:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:":{"name":"+logInWithUsernameInBackground:password:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:block:":{"name":"+logInWithUsernameInBackground:password:block:","abstract":"

    Makes an asynchronous request to log in a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:":{"name":"+becomeInBackground:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:block:":{"name":"+becomeInBackground:block:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackground":{"name":"+enableRevocableSessionInBackground","abstract":"

    Enables revocable sessions and migrates the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackgroundWithBlock:":{"name":"+enableRevocableSessionInBackgroundWithBlock:","abstract":"

    Enables revocable sessions and upgrades the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackground":{"name":"+logOutInBackground","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackgroundWithBlock:":{"name":"+logOutInBackgroundWithBlock:","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:":{"name":"+requestPasswordResetForEmailInBackground:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:block:":{"name":"+requestPasswordResetForEmailInBackground:block:","abstract":"

    Send a password reset request asynchronously for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)registerAuthenticationDelegate:forAuthType:":{"name":"+registerAuthenticationDelegate:forAuthType:","abstract":"

    Registers a third party authentication delegate. If a delegate is already registered for the authType then","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)unregisterAuthenticationDelegateForAuthType:":{"name":"+unregisterAuthenticationDelegateForAuthType:","abstract":"

    Unregisters a third party authentication delegate. If no delegate is registered, this fails gracefully.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithAuthTypeInBackground:authData:":{"name":"+logInWithAuthTypeInBackground:authData:","abstract":"

    Logs in a user with third party authentication credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)linkWithAuthTypeInBackground:authData:":{"name":"-linkWithAuthTypeInBackground:authData:","abstract":"

    Links this user to a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)unlinkWithAuthTypeInBackground:":{"name":"-unlinkWithAuthTypeInBackground:","abstract":"

    Unlinks this user from a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)isLinkedWithAuthType:":{"name":"-isLinkedWithAuthType:","abstract":"

    Indicates whether this user is linked with a third party authentication library of a specific type.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithTarget:selector:":{"name":"-signUpInBackgroundWithTarget:selector:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:target:selector:":{"name":"+logInWithUsernameInBackground:password:target:selector:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:target:selector:":{"name":"+becomeInBackground:target:selector:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:target:selector:":{"name":"+requestPasswordResetForEmailInBackground:target:selector:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp":{"name":"-signUp","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp:":{"name":"-signUp:","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:":{"name":"+logInWithUsername:password:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:error:":{"name":"+logInWithUsername:password:error:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:":{"name":"+become:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:error:":{"name":"+become:error:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOut":{"name":"+logOut","abstract":"

    Synchronously* logs out the currently logged in user on disk.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:":{"name":"+requestPasswordResetForEmail:","abstract":"

    Synchronously Send a password reset request for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:error:":{"name":"+requestPasswordResetForEmail:error:","abstract":"

    Synchronously send a password reset request for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFSession.html#/c:objc(cs)PFSession(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token string for this session.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackground":{"name":"+getCurrentSessionInBackground","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackgroundWithBlock:":{"name":"+getCurrentSessionInBackgroundWithBlock:","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:":{"name":"-initWithName:","abstract":"

    Constructs a new PFRole with the given name.","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:acl:":{"name":"-initWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:":{"name":"+roleWithName:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:acl:":{"name":"+roleWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)name":{"name":"name","abstract":"

    Gets or sets the name for a role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)users":{"name":"users","abstract":"

    Gets the PFRelation for the PFUser objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)roles":{"name":"roles","abstract":"

    Gets the PFRelation for the PFRole objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(py)targetClass":{"name":"targetClass","abstract":"

    The name of the class of the target child objects.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)query":{"name":"-query","abstract":"

    Returns a PFQuery object that can be used to get objects in this relation.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)addObject:":{"name":"-addObject:","abstract":"

    Adds a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)removeObject:":{"name":"-removeObject:","abstract":"

    Removes a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes the query with a class name.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:":{"name":"+queryWithClassName:","abstract":"

    Returns a PFQuery for a given class.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:predicate:":{"name":"+queryWithClassName:predicate:","abstract":"

    Creates a PFQuery with the constraints given by predicate.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name to query for.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKey:":{"name":"-includeKey:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKeys:":{"name":"-includeKeys:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeAll":{"name":"-includeAll","abstract":"

    Make the query include all PFObjects that have a reference.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKey:":{"name":"-excludeKey:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKeys:":{"name":"-excludeKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)selectKeys:":{"name":"-selectKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to include only the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyExists:":{"name":"-whereKeyExists:","abstract":"

    Add a constraint that requires a particular key exists.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyDoesNotExist:":{"name":"-whereKeyDoesNotExist:","abstract":"

    Add a constraint that requires a key not exist.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:equalTo:":{"name":"-whereKey:equalTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be equal to the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThan:":{"name":"-whereKey:lessThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be less than the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThanOrEqualTo:":{"name":"-whereKey:lessThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThan:":{"name":"-whereKey:greaterThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThanOrEqualTo:":{"name":"-whereKey:greaterThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notEqualTo:":{"name":"-whereKey:notEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesText:":{"name":"-whereKey:matchesText:","abstract":"

    Add a constraint for finding string values that contain a provided","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedIn:":{"name":"-whereKey:containedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notContainedIn:":{"name":"-whereKey:notContainedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsAllObjectsInArray:":{"name":"-whereKey:containsAllObjectsInArray:","abstract":"

    Add a constraint to the query that requires a particular key’s array","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedBy:":{"name":"-whereKey:containedBy:","abstract":"

    Adds a constraint to the query that requires a particular key’s value to","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:":{"name":"-whereKey:nearGeoPoint:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinMiles:":{"name":"-whereKey:nearGeoPoint:withinMiles:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinKilometers:":{"name":"-whereKey:nearGeoPoint:withinKilometers:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinRadians:":{"name":"-whereKey:nearGeoPoint:withinRadians:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be near","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinGeoBoxFromSouthwest:toNortheast:":{"name":"-whereKey:withinGeoBoxFromSouthwest:toNortheast:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinPolygon:":{"name":"-whereKey:withinPolygon:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:polygonContains:":{"name":"-whereKey:polygonContains:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:":{"name":"-whereKey:matchesRegex:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:modifiers:":{"name":"-whereKey:matchesRegex:modifiers:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsString:":{"name":"-whereKey:containsString:","abstract":"

    Add a constraint for finding string values that contain a provided substring.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasPrefix:":{"name":"-whereKey:hasPrefix:","abstract":"

    Add a constraint for finding string values that start with a provided prefix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasSuffix:":{"name":"-whereKey:hasSuffix:","abstract":"

    Add a constraint for finding string values that end with a provided suffix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)orQueryWithSubqueries:":{"name":"+orQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the or of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)andQueryWithSubqueries:":{"name":"+andQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the and of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesKey:inQuery:":{"name":"-whereKey:matchesKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value matches a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchKey:inQuery:":{"name":"-whereKey:doesNotMatchKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value NOT match a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesQuery:":{"name":"-whereKey:matchesQuery:","abstract":"

    Add a constraint that requires that a key’s value matches a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchQuery:":{"name":"-whereKey:doesNotMatchQuery:","abstract":"

    Add a constraint that requires that a key’s value to not match a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByAscending:":{"name":"-orderByAscending:","abstract":"

    Sort the results in ascending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addAscendingOrder:":{"name":"-addAscendingOrder:","abstract":"

    Additionally sort in ascending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByDescending:":{"name":"-orderByDescending:","abstract":"

    Sort the results in descending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addDescendingOrder:":{"name":"-addDescendingOrder:","abstract":"

    Additionally sort in descending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptor:":{"name":"-orderBySortDescriptor:","abstract":"

    Sort the results using a given sort descriptor.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptors:":{"name":"-orderBySortDescriptors:","abstract":"

    Sort the results using a given array of sort descriptors.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:":{"name":"-getObjectInBackgroundWithId:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:block:":{"name":"-getObjectInBackgroundWithId:block:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryForUser":{"name":"+queryForUser","abstract":"

    @deprecated Please use [PFUser query] instead.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackground":{"name":"-findObjectsInBackground","abstract":"

    Finds objects asynchronously and sets the NSArray of PFObject objects as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithBlock:":{"name":"-findObjectsInBackgroundWithBlock:","abstract":"

    Finds objects asynchronously and calls the given block with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackground":{"name":"-getFirstObjectInBackground","abstract":"

    Gets an object asynchronously and sets it as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithBlock:":{"name":"-getFirstObjectInBackgroundWithBlock:","abstract":"

    Gets an object asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackground":{"name":"-countObjectsInBackground","abstract":"

    Counts objects asynchronously and sets NSNumber with count as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithBlock:":{"name":"-countObjectsInBackgroundWithBlock:","abstract":"

    Counts objects asynchronously and calls the given block with the counts.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current network request (if any). Ensures that callbacks won’t be called.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)limit":{"name":"limit","abstract":"

    A limit on the number of objects to return. The default limit is 100, with a","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)skip":{"name":"skip","abstract":"

    The number of objects to skip before returning any.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)cachePolicy":{"name":"cachePolicy","abstract":"

    The cache policy to use for requests.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)maxCacheAge":{"name":"maxCacheAge","abstract":"

    The age after which a cached value will be ignored

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)hasCachedResult":{"name":"hasCachedResult","abstract":"

    Returns whether there is a cached result for this query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)clearCachedResult":{"name":"-clearCachedResult","abstract":"

    Clears the cached result for this query. If there is no cached result, this is a noop.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)clearAllCachedResults":{"name":"+clearAllCachedResults","abstract":"

    Clears the cached results for all queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromLocalDatastore":{"name":"-fromLocalDatastore","abstract":"

    Change the source of this query to all pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPin":{"name":"-fromPin","abstract":"

    Change the source of this query to the default group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPinWithName:":{"name":"-fromPinWithName:","abstract":"

    Change the source of this query to a specific group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)ignoreACLs":{"name":"-ignoreACLs","abstract":"

    Ignore ACLs when querying from the Local Datastore.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)trace":{"name":"trace","abstract":"

    Whether or not performance tracing should be done on the query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:target:selector:":{"name":"-getObjectInBackgroundWithId:target:selector:","abstract":"

    Gets a PFObject asynchronously.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithTarget:selector:":{"name":"-findObjectsInBackgroundWithTarget:selector:","abstract":"

    Finds objects asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithTarget:selector:":{"name":"-getFirstObjectInBackgroundWithTarget:selector:","abstract":"

    Gets an object asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithTarget:selector:":{"name":"-countObjectsInBackgroundWithTarget:selector:","abstract":"

    Counts objects asynchronously and calls the given callback with the count.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:":{"name":"+getObjectOfClass:objectId:","abstract":"

    Returns a PFObject with a given class and id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:error:":{"name":"+getObjectOfClass:objectId:error:","abstract":"

    Returns a PFObject with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:":{"name":"-getObjectWithId:","abstract":"

    Returns a PFObject with the given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:error:":{"name":"-getObjectWithId:error:","abstract":"

    Returns a PFObject with the given id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:":{"name":"+getUserObjectWithId:","abstract":"

    Returns a PFUser with a given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:error:":{"name":"+getUserObjectWithId:error:","abstract":"

    Returns a PFUser with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects":{"name":"-findObjects","abstract":"

    Finds objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects:":{"name":"-findObjects:","abstract":"

    Finds objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject":{"name":"-getFirstObject","abstract":"

    Gets an object synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject:":{"name":"-getFirstObject:","abstract":"

    Gets an object synchronously based on the constructed query and sets an error if any occurred.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects":{"name":"-countObjects","abstract":"

    Counts objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects:":{"name":"-countObjects:","abstract":"

    Counts objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)push":{"name":"+push","abstract":"
    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannel:":{"name":"-setChannel:","abstract":"

    Sets the channel on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannels:":{"name":"-setChannels:","abstract":"

    Sets the array of channels on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setQuery:":{"name":"-setQuery:","abstract":"

    Sets an installation query to which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setMessage:":{"name":"-setMessage:","abstract":"

    Sets an alert message for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setData:":{"name":"-setData:","abstract":"

    Sets an arbitrary data payload for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToAndroid:":{"name":"-setPushToAndroid:","abstract":"

    Sets whether this push will go to Android devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToIOS:":{"name":"-setPushToIOS:","abstract":"

    Sets whether this push will go to iOS devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAtDate:":{"name":"-expireAtDate:","abstract":"

    Sets the expiration time for this notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAfterTimeInterval:":{"name":"-expireAfterTimeInterval:","abstract":"

    Sets the time interval after which this notification should expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)clearExpiration":{"name":"-clearExpiration","abstract":"

    Clears both expiration values, indicating that the notification should never expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(py)pushDate":{"name":"pushDate","abstract":"

    Date at which to send this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:":{"name":"+sendPushMessageToChannelInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:block:":{"name":"+sendPushMessageToChannelInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:":{"name":"+sendPushMessageToQueryInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:block:":{"name":"+sendPushMessageToQueryInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackground":{"name":"-sendPushInBackground","abstract":"

    Asynchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithBlock:":{"name":"-sendPushInBackgroundWithBlock:","abstract":"

    Asynchronously send this push message and executes the given callback block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:":{"name":"+sendPushDataToChannelInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:block:":{"name":"+sendPushDataToChannelInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:":{"name":"+sendPushDataToQueryInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:block:":{"name":"+sendPushDataToQueryInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)handlePush:":{"name":"+handlePush:","abstract":"

    A default handler for push notifications while the app is active that","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)storeDeviceToken:":{"name":"+storeDeviceToken:","abstract":"

    Store the device token locally for push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackground":{"name":"+getSubscribedChannelsInBackground","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithBlock:":{"name":"+getSubscribedChannelsInBackgroundWithBlock:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:":{"name":"+subscribeToChannelInBackground:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:block:":{"name":"+subscribeToChannelInBackground:block:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:":{"name":"+unsubscribeFromChannelInBackground:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:block:":{"name":"+unsubscribeFromChannelInBackground:block:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:target:selector:":{"name":"+sendPushMessageToChannelInBackground:withMessage:target:selector:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithTarget:selector:":{"name":"-sendPushInBackgroundWithTarget:selector:","abstract":"

    Asynchronously send this push message and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:target:selector:":{"name":"+sendPushDataToChannelInBackground:withData:target:selector:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithTarget:selector:":{"name":"+getSubscribedChannelsInBackgroundWithTarget:selector:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:target:selector:":{"name":"+subscribeToChannelInBackground:target:selector:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:target:selector:":{"name":"+unsubscribeFromChannelInBackground:target:selector:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPush:":{"name":"-sendPush:","abstract":"

    Synchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannel:withMessage:error:":{"name":"+sendPushMessageToChannel:withMessage:error:","abstract":"

    Synchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQuery:withMessage:error:":{"name":"+sendPushMessageToQuery:withMessage:error:","abstract":"

    Send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannel:withData:error:":{"name":"+sendPushDataToChannel:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQuery:withData:error:":{"name":"+sendPushDataToQuery:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannels:":{"name":"+getSubscribedChannels:","abstract":"

    Synchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannel:error:":{"name":"+subscribeToChannel:error:","abstract":"

    Synchrnously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannel:error:":{"name":"+unsubscribeFromChannel:error:","abstract":"

    Synchronously unsubscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(cm)polygonWithCoordinates:":{"name":"+polygonWithCoordinates:","abstract":"

    Creates a new PFPolygon object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(im)containsPoint:":{"name":"-containsPoint:","abstract":"

    Test if this polygon contains a point

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(py)coordinates":{"name":"coordinates","abstract":"

    Array of PFGeoPoints or CLLocations

    ","parent_name":"PFPolygon"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes a new empty PFObject instance with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:":{"name":"+objectWithClassName:","abstract":"

    Creates a new PFObject with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:dictionary:":{"name":"+objectWithClassName:dictionary:","abstract":"

    Creates a new PFObject with a class name, initialized with data","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithClassName:objectId:":{"name":"+objectWithoutDataWithClassName:objectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)objectId":{"name":"objectId","abstract":"

    The id of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)updatedAt":{"name":"updatedAt","abstract":"

    When the object was last updated.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)createdAt":{"name":"createdAt","abstract":"

    When the object was created.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)ACL":{"name":"ACL","abstract":"

    The ACL for this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)allKeys":{"name":"allKeys","abstract":"

    Returns an array of the keys contained in this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKey:":{"name":"-setObject:forKey:","abstract":"

    Sets the object associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectForKey:":{"name":"-removeObjectForKey:","abstract":"

    Unsets a key on the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKeyedSubscript:":{"name":"-setObject:forKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationForKey:":{"name":"-relationForKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationforKey:":{"name":"-relationforKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revert":{"name":"-revert","abstract":"

    Clears any changes to this object made since the last call to save and sets it back to the server state.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revertObjectForKey:":{"name":"-revertObjectForKey:","abstract":"

    Clears any changes to this object’s key that were done after last successful save and sets it back to the","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObject:forKey:":{"name":"-addObject:forKey:","abstract":"

    Adds an object to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObjectsFromArray:forKey:":{"name":"-addObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObject:forKey:":{"name":"-addUniqueObject:forKey:","abstract":"

    Adds an object to the array associated with a given key, only if it is not already present in the array.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObjectsFromArray:forKey:":{"name":"-addUniqueObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the array associated with a given key,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObject:forKey:":{"name":"-removeObject:forKey:","abstract":"

    Removes all occurrences of an object from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectsInArray:forKey:":{"name":"-removeObjectsInArray:forKey:","abstract":"

    Removes all occurrences of the objects contained in another array from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:":{"name":"-incrementKey:","abstract":"

    Increments the given key by 1.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:byAmount:":{"name":"-incrementKey:byAmount:","abstract":"

    Increments the given key by a number.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually":{"name":"-saveEventually","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually:":{"name":"-saveEventually:","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:":{"name":"+saveAllInBackground:","abstract":"

    Saves a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:block:":{"name":"+saveAllInBackground:block:","abstract":"

    Saves a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:":{"name":"+deleteAllInBackground:","abstract":"

    Deletes a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:block:":{"name":"+deleteAllInBackground:block:","abstract":"

    Deletes a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Gets whether the PFObject has been fetched.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackground":{"name":"-fetchInBackground","abstract":"

    Fetches the PFObject asynchronously and sets it as a result for the task.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithBlock:":{"name":"-fetchInBackgroundWithBlock:","abstract":"

    Fetches the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackground":{"name":"-fetchIfNeededInBackground","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithBlock:":{"name":"-fetchIfNeededInBackgroundWithBlock:","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO, then calls the callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:":{"name":"+fetchAllInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:block:":{"name":"+fetchAllInBackground:block:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:":{"name":"+fetchAllIfNeededInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:block:":{"name":"+fetchAllIfNeededInBackground:block:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackground":{"name":"-fetchFromLocalDatastoreInBackground","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackgroundWithBlock:":{"name":"-fetchFromLocalDatastoreInBackgroundWithBlock:","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackground":{"name":"-deleteInBackground","abstract":"

    Deletes the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithBlock:":{"name":"-deleteInBackgroundWithBlock:","abstract":"

    Deletes the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteEventually":{"name":"-deleteEventually","abstract":"

    Deletes this object from the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dirty":{"name":"dirty","abstract":"

    Gets whether any key-value pair in this object (or its children)","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)isDirtyForKey:":{"name":"-isDirtyForKey:","abstract":"

    Get whether a value associated with a key has been added/updated/removed and not saved yet.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackground":{"name":"-pinInBackground","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithBlock:":{"name":"-pinInBackgroundWithBlock:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:":{"name":"-pinInBackgroundWithName:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:block:":{"name":"-pinInBackgroundWithName:block:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:":{"name":"+pinAllInBackground:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:block:":{"name":"+pinAllInBackground:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:":{"name":"+pinAllInBackground:withName:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:block:":{"name":"+pinAllInBackground:withName:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackground":{"name":"-unpinInBackground","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithBlock:":{"name":"-unpinInBackgroundWithBlock:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:":{"name":"-unpinInBackgroundWithName:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:block:":{"name":"-unpinInBackgroundWithName:block:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackground":{"name":"+unpinAllObjectsInBackground","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithBlock:":{"name":"+unpinAllObjectsInBackgroundWithBlock:","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:":{"name":"+unpinAllObjectsInBackgroundWithName:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:block:":{"name":"+unpinAllObjectsInBackgroundWithName:block:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:":{"name":"+unpinAllInBackground:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:block:":{"name":"+unpinAllInBackground:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:":{"name":"+unpinAllInBackground:withName:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:block:":{"name":"+unpinAllInBackground:withName:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:target:selector:":{"name":"+saveAllInBackground:target:selector:","abstract":"

    Saves a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)refreshInBackgroundWithTarget:selector:":{"name":"-refreshInBackgroundWithTarget:selector:","abstract":"

    Asynchronously refreshes the PFObject and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithTarget:selector:":{"name":"-fetchInBackgroundWithTarget:selector:","abstract":"

    Fetches the `PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithTarget:selector:":{"name":"-fetchIfNeededInBackgroundWithTarget:selector:","abstract":"

    Fetches the PFObject’s data asynchronously if dataAvailable is NO, then calls the callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:target:selector:":{"name":"+fetchAllInBackground:target:selector:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:target:selector:":{"name":"+fetchAllIfNeededInBackground:target:selector:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithTarget:selector:":{"name":"-deleteInBackgroundWithTarget:selector:","abstract":"

    Deletes the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:target:selector:":{"name":"+deleteAllInBackground:target:selector:","abstract":"

    Deletes a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)object":{"name":"+object","abstract":"

    Creates an instance of the registered subclass with this class’s PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Registers an Objective-C class for Parse to use for representing a given Parse class.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)query":{"name":"+query","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName with a given predicate.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save":{"name":"-save","abstract":"

    Synchronously saves the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save:":{"name":"-save:","abstract":"

    Synchronously saves the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:":{"name":"+saveAll:","abstract":"

    Saves a collection of objects *synchronously all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:error:":{"name":"+saveAll:error:","abstract":"

    Saves a collection of objects synchronously all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch":{"name":"-fetch","abstract":"

    Synchronously* fetches the PFObject with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch:":{"name":"-fetch:","abstract":"

    Synchronously fetches the PFObject with the current data from the server and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded":{"name":"-fetchIfNeeded","abstract":"

    Synchronously* fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded:":{"name":"-fetchIfNeeded:","abstract":"

    Synchronously fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:":{"name":"+fetchAll:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:error:":{"name":"+fetchAll:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:":{"name":"+fetchAllIfNeeded:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:error:":{"name":"+fetchAllIfNeeded:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore":{"name":"-fetchFromLocalDatastore","abstract":"

    Synchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore:":{"name":"-fetchFromLocalDatastore:","abstract":"

    Synchronously loads data from the local datastore into this object, if it has not been fetched","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete":{"name":"-delete","abstract":"

    Synchronously deletes the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete:":{"name":"-delete:","abstract":"

    Synchronously deletes the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:":{"name":"+deleteAll:","abstract":"

    Synchronously deletes a collection of objects all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:error:":{"name":"+deleteAll:error:","abstract":"

    Synchronously deletes a collection of objects all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin":{"name":"-pin","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin:":{"name":"-pin:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:":{"name":"-pinWithName:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:error:":{"name":"-pinWithName:error:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:":{"name":"+pinAll:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:error:":{"name":"+pinAll:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:":{"name":"+pinAll:withName:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:error:":{"name":"+pinAll:withName:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin":{"name":"-unpin","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin:":{"name":"-unpin:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:":{"name":"-unpinWithName:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:error:":{"name":"-unpinWithName:error:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects":{"name":"+unpinAllObjects","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects:":{"name":"+unpinAllObjects:","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:":{"name":"+unpinAllObjectsWithName:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:error:":{"name":"+unpinAllObjectsWithName:error:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:":{"name":"+unpinAll:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:error:":{"name":"+unpinAll:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:":{"name":"+unpinAll:withName:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:error:":{"name":"+unpinAll:withName:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)currentInstallation":{"name":"+currentInstallation","abstract":"

    Gets the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)getCurrentInstallationInBackground":{"name":"+getCurrentInstallationInBackground","abstract":"

    Asynchronously loads the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceType":{"name":"deviceType","abstract":"

    The device type for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)installationId":{"name":"installationId","abstract":"

    The installationId for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceToken":{"name":"deviceToken","abstract":"

    The device token for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)badge":{"name":"badge","abstract":"

    The badge for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)timeZone":{"name":"timeZone","abstract":"

    The name of the time zone for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)channels":{"name":"channels","abstract":"

    The channels for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(im)setDeviceTokenFromData:":{"name":"-setDeviceTokenFromData:","abstract":"

    Sets the device token string property from an NSData-encoded token.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)query":{"name":"+query","abstract":"

    Creates a PFQuery for PFInstallation objects.

    ","parent_name":"PFInstallation"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPoint":{"name":"+geoPoint","abstract":"

    Create a PFGeoPoint object. Latitude and longitude are set to 0.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLocation:":{"name":"+geoPointWithLocation:","abstract":"

    Creates a new PFGeoPoint object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLatitude:longitude:":{"name":"+geoPointWithLatitude:longitude:","abstract":"

    Create a new PFGeoPoint object with the specified latitude and longitude.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointForCurrentLocationInBackground:":{"name":"+geoPointForCurrentLocationInBackground:","abstract":"

    Fetches the current device location and executes a block with a new PFGeoPoint object.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)latitude":{"name":"latitude","abstract":"

    Latitude of point in degrees. Valid range is from -90.0 to 90.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)longitude":{"name":"longitude","abstract":"

    Longitude of point in degrees. Valid range is from -180.0 to 180.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInRadiansTo:":{"name":"-distanceInRadiansTo:","abstract":"

    Get distance in radians from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInMilesTo:":{"name":"-distanceInMilesTo:","abstract":"

    Get distance in miles from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInKilometersTo:":{"name":"-distanceInKilometersTo:","abstract":"

    Get distance in kilometers from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)init":{"name":"-init","abstract":"
    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:":{"name":"+fileObjectWithData:","abstract":"

    Creates a file with given data. A name will be assigned to it by the server.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:":{"name":"+fileObjectWithName:data:","abstract":"

    Creates a file with given data and name.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:":{"name":"+fileObjectWithName:contentsAtPath:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:error:":{"name":"+fileObjectWithName:contentsAtPath:error:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:":{"name":"+fileObjectWithName:data:contentType:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:error:":{"name":"+fileObjectWithName:data:contentType:error:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:contentType:":{"name":"+fileObjectWithData:contentType:","abstract":"

    Creates a file with given data and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)name":{"name":"name","abstract":"

    The name of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)url":{"name":"url","abstract":"

    The url of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dirty":{"name":"dirty","abstract":"

    Whether the file has been uploaded for the first time.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the file asynchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithProgressBlock:":{"name":"-saveInBackgroundWithProgressBlock:","abstract":"

    Saves the file asynchronously

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:progressBlock:":{"name":"-saveInBackgroundWithBlock:progressBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Whether the data is available in memory or needs to be downloaded.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackground":{"name":"-getDataInBackground","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithProgressBlock:":{"name":"-getDataInBackgroundWithProgressBlock:","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackground":{"name":"-getDataStreamInBackground","abstract":"

    This method is like -getDataInBackground but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackground":{"name":"-getDataDownloadStreamInBackground","abstract":"

    This method is like -getDataStreamInBackground, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithProgressBlock:":{"name":"-getDataStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataInBackground but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackgroundWithProgressBlock:":{"name":"-getDataDownloadStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataStreamInBackgroundWithProgressBlock:, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:":{"name":"-getDataInBackgroundWithBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:":{"name":"-getDataStreamInBackgroundWithBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock: but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:progressBlock:":{"name":"-getDataInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:progressBlock:":{"name":"-getDataStreamInBackgroundWithBlock:progressBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock:progressBlock: but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackground":{"name":"-getFilePathInBackground","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithProgressBlock:":{"name":"-getFilePathInBackgroundWithProgressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:":{"name":"-getFilePathInBackgroundWithBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:progressBlock:":{"name":"-getFilePathInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current request (upload or download of file).

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)clearCachedDataInBackground":{"name":"-clearCachedDataInBackground","abstract":"

    Clears all cached data for this file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)clearAllCachedDataInBackground":{"name":"+clearAllCachedDataInBackground","abstract":"

    Clears all cached data for all downloaded files.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the file asynchronously and invokes the given selector on a target.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithTarget:selector:":{"name":"-getDataInBackgroundWithTarget:selector:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save":{"name":"-save","abstract":"

    Saves the file synchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save:":{"name":"-save:","abstract":"

    Saves the file synchronously and sets an error if it occurs.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData":{"name":"-getData","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData:":{"name":"-getData:","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream":{"name":"-getDataStream","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream:":{"name":"-getDataStream:","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)currentConfig":{"name":"+currentConfig","abstract":"

    Returns the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getCurrentConfigInBackground":{"name":"+getCurrentConfigInBackground","abstract":"

    Returns the task that encapsulates the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackground":{"name":"+getConfigInBackground","abstract":"

    Gets the PFConfig asynchronously and sets it as a result of a task.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackgroundWithBlock:":{"name":"+getConfigInBackgroundWithBlock:","abstract":"

    Gets the PFConfig asynchronously and executes the given callback block.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig":{"name":"+getConfig","abstract":"

    Gets the PFConfig object synchronously from the server.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig:":{"name":"+getConfig:","abstract":"

    Gets the PFConfig object synchronously from the server and sets an error if it occurs.

    ","parent_name":"PFConfig"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:":{"name":"+callFunctionInBackground:withParameters:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:block:":{"name":"+callFunctionInBackground:withParameters:block:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:target:selector:":{"name":"+callFunctionInBackground:withParameters:target:selector:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:":{"name":"+callFunction:withParameters:","abstract":"

    Calls the given cloud function synchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:error:":{"name":"+callFunction:withParameters:error:","abstract":"

    Calls the given cloud function synchronously with the parameters provided and","parent_name":"PFCloud"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInInBackground":{"name":"+logInInBackground","abstract":"

    Creates an anonymous user asynchronously and sets as a result to BFTask.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithBlock:":{"name":"+logInWithBlock:","abstract":"

    Creates an anonymous user asynchronously and performs a provided block.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)isLinkedWithUser:":{"name":"+isLinkedWithUser:","abstract":"

    Whether the PFUser object is logged in anonymously.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithTarget:selector:":{"name":"+logInWithTarget:selector:","abstract":"

    Creates an anonymous user asynchronously and invokes a selector on a target.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptions:":{"name":"+trackAppOpenedWithLaunchOptions:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptionsInBackground:block:":{"name":"+trackAppOpenedWithLaunchOptionsInBackground:block:","abstract":"

    Tracks this application being launched.","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayload:":{"name":"+trackAppOpenedWithRemoteNotificationPayload:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayloadInBackground:block:":{"name":"+trackAppOpenedWithRemoteNotificationPayloadInBackground:block:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:":{"name":"+trackEvent:","abstract":"

    Tracks the occurrence of a custom event.

    ","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:block:":{"name":"+trackEventInBackground:block:","abstract":"

    Tracks the occurrence of a custom event. Parse will store a data point at the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:dimensions:":{"name":"+trackEvent:dimensions:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:dimensions:block:":{"name":"+trackEventInBackground:dimensions:block:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACL":{"name":"+ACL","abstract":"

    Creates an ACL with no permissions granted.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACLWithUser:":{"name":"+ACLWithUser:","abstract":"

    Creates an ACL where only the provided user has access.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicReadAccess":{"name":"publicReadAccess","abstract":"

    Controls whether the public is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicWriteAccess":{"name":"publicWriteAccess","abstract":"

    Controls whether the public is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUserId:":{"name":"-setReadAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUserId:":{"name":"-getReadAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUserId:":{"name":"-setWriteAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUserId:":{"name":"-getWriteAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUser:":{"name":"-setReadAccess:forUser:","abstract":"

    Set whether the given user is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUser:":{"name":"-getReadAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUser:":{"name":"-setWriteAccess:forUser:","abstract":"

    Set whether the given user is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUser:":{"name":"-getWriteAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRoleWithName:":{"name":"-getReadAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRoleWithName:":{"name":"-setReadAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRoleWithName:":{"name":"-getWriteAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRoleWithName:":{"name":"-setWriteAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRole:":{"name":"-getReadAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRole:":{"name":"-setReadAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRole:":{"name":"-getWriteAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRole:":{"name":"-setWriteAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)setDefaultACL:withAccessForCurrentUser:":{"name":"+setDefaultACL:withAccessForCurrentUser:","abstract":"

    Sets a default ACL that will be applied to all instances of PFObject when they are created.

    ","parent_name":"PFACL"},"Classes/PFACL.html":{"name":"PFACL","abstract":"

    The PFACL class is used to control which users can access or modify a particular object."},"Classes/PFAnalytics.html":{"name":"PFAnalytics","abstract":"

    PFAnalytics provides an interface to Parse’s logging and analytics backend.

    "},"Classes/PFAnonymousUtils.html":{"name":"PFAnonymousUtils","abstract":"

    Provides utility functions for working with Anonymously logged-in users."},"Classes/PFCloud.html":{"name":"PFCloud","abstract":"

    The PFCloud class provides methods for interacting with Parse Cloud Functions.

    "},"Classes/PFConfig.html":{"name":"PFConfig","abstract":"

    PFConfig is a representation of the remote configuration object."},"Classes.html#/c:objc(cs)PFOfflineDecoder":{"name":"PFOfflineDecoder","abstract":"

    Extends the normal JSON to PFObject decoding to also deal with placeholders for new objects"},"Classes.html#/c:objc(cs)PFKnownParseObjectDecoder":{"name":"PFKnownParseObjectDecoder","abstract":"

    A subclass of PFDecoder which can keep PFObject that has been fetched instead of creating a new instance.

    "},"Classes.html#/c:objc(cs)PFEncoder":{"name":"PFEncoder","abstract":"
    "},"Classes.html#/c:objc(cs)PFNoObjectEncoder":{"name":"PFNoObjectEncoder","abstract":"

    Encoding strategy that rejects PFObject.

    "},"Classes.html#/c:objc(cs)PFPointerOrLocalIdObjectEncoder":{"name":"PFPointerOrLocalIdObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId or with localId.

    "},"Classes.html#/c:objc(cs)PFPointerObjectEncoder":{"name":"PFPointerObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId and rejects"},"Classes.html#/c:objc(cs)PFOfflineObjectEncoder":{"name":"PFOfflineObjectEncoder","abstract":"

    Encoding strategy that can encode objects that are available offline. After using this encoder,"},"Classes/PFFileObject.html":{"name":"PFFileObject","abstract":"

    PFFileObject representes a file of binary data stored on the Parse servers."},"Classes.html#/c:objc(cs)PFFile":{"name":"PFFile","abstract":"

    PFFile was renamed to PFFileObject."},"Classes.html#/c:objc(cs)PFFileUploadResult":{"name":"PFFileUploadResult","abstract":"

    Response provided by a custom PFFileUploadController.

    "},"Classes/PFGeoPoint.html":{"name":"PFGeoPoint","abstract":"

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject."},"Classes/PFInstallation.html":{"name":"PFInstallation","abstract":"

    A Parse Framework Installation Object that is a local representation of an"},"Classes/PFObject.html":{"name":"PFObject","abstract":"

    The PFObject class is a local representation of data persisted to the Parse cloud."},"Classes/PFPolygon.html":{"name":"PFPolygon","abstract":"

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject."},"Classes/PFPush.html":{"name":"PFPush","abstract":"

    The PFPush class defines a push notification that can be sent from a client device.

    "},"Classes/PFQuery.html":{"name":"PFQuery","abstract":"

    The PFQuery class defines a query that is used to query for PFObjects.

    "},"Classes/PFRelation.html":{"name":"PFRelation","abstract":"

    The PFRelation class that is used to access all of the children of a many-to-many relationship."},"Classes/PFRole.html":{"name":"PFRole","abstract":"

    The PFRole class represents a Role on the Parse server."},"Classes/PFSession.html":{"name":"PFSession","abstract":"

    PFSession is a local representation of a session."},"Classes/PFUser.html":{"name":"PFUser","abstract":"

    The PFUser class is a local representation of a user persisted to the Parse Data."},"Classes/Parse.html":{"name":"Parse","abstract":"

    The Parse class contains static functions that handle global configuration for the Parse framework.

    "},"Classes/ParseClientConfiguration.html":{"name":"ParseClientConfiguration","abstract":"

    The ParseClientConfiguration represents the local configuration of the SDK to connect to the server with.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type%20Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "}} \ No newline at end of file +{"Type%20Definitions.html#/c:PFQuery.h@T@PFQueryArrayResultBlock":{"name":"PFQueryArrayResultBlock","abstract":"
    "},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    Sets a custom file upload controller that uploads PFFiles using its own policy.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    A custom NSURLSessionConfiguration configuration that will be used from the SDK.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/ParseMutableClientConfiguration.html#/c:objc(pl)ParseMutableClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseMutableClientConfiguration"},"Protocols/PFUserAuthenticationDelegate.html#/c:objc(pl)PFUserAuthenticationDelegate(im)restoreAuthenticationWithAuthData:":{"name":"-restoreAuthenticationWithAuthData:","abstract":"

    Called when restoring third party authentication credentials that have been serialized,","parent_name":"PFUserAuthenticationDelegate"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)parseClassName":{"name":"+parseClassName","abstract":"

    The name of the class as seen in the REST API.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)query":{"name":"+query","abstract":"

    Create a query which returns objects of this type.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of this type with a given predicate.

    ","parent_name":"PFSubclassing"},"Protocols/PFSubclassing.html#/c:objc(pl)PFSubclassing(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Lets Parse know this class should be used to instantiate all objects with class type parseClassName.

    ","parent_name":"PFSubclassing"},"Protocols/PFFileUploadController.html#/c:objc(pl)PFFileUploadController(im)uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:":{"name":"-uploadSourceFilePath:fileName:mimeType:sessionToken:cancellationToken:progressBlock:","abstract":"

    Uploads a file asynchronously from file path for a given file state.

    ","parent_name":"PFFileUploadController"},"Protocols/PFFileUploadController.html":{"name":"PFFileUploadController","abstract":"

    A policy interface for overriding the default upload behavior of uploading a PFFileObject"},"Protocols/PFSubclassing.html":{"name":"PFSubclassing","abstract":"

    If a subclass of PFObject conforms to PFSubclassing and calls PFObject.+registerSubclass,"},"Protocols/PFUserAuthenticationDelegate.html":{"name":"PFUserAuthenticationDelegate","abstract":"

    Provides a general interface for delegation of third party authentication with PFUsers.

    "},"Protocols/ParseMutableClientConfiguration.html":{"name":"ParseMutableClientConfiguration","abstract":"

    The ParseMutableClientConfiguration represents a ParseClientConfiguration object that can be mutated.

    "},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInternalServer":{"name":"kPFErrorInternalServer","abstract":"

    Internal server error. No information available.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorConnectionFailed":{"name":"kPFErrorConnectionFailed","abstract":"

    The connection to the Parse servers failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectNotFound":{"name":"kPFErrorObjectNotFound","abstract":"

    Object doesn’t exist, or has an incorrect password.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidQuery":{"name":"kPFErrorInvalidQuery","abstract":"

    You tried to find values matching a datatype that doesn’t","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidClassName":{"name":"kPFErrorInvalidClassName","abstract":"

    Missing or invalid classname. Classnames are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorMissingObjectId":{"name":"kPFErrorMissingObjectId","abstract":"

    Missing object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidKeyName":{"name":"kPFErrorInvalidKeyName","abstract":"

    Invalid key name. Keys are case-sensitive.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPointer":{"name":"kPFErrorInvalidPointer","abstract":"

    Malformed pointer. Pointers must be arrays of a classname and an object id.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidJSON":{"name":"kPFErrorInvalidJSON","abstract":"

    Malformed json object. A json dictionary is expected.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCommandUnavailable":{"name":"kPFErrorCommandUnavailable","abstract":"

    Tried to access a feature only available internally.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorIncorrectType":{"name":"kPFErrorIncorrectType","abstract":"

    Field set to incorrect type.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidChannelName":{"name":"kPFErrorInvalidChannelName","abstract":"

    Invalid channel name. A channel name is either an empty string (the broadcast channel)","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidDeviceToken":{"name":"kPFErrorInvalidDeviceToken","abstract":"

    Invalid device token.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPushMisconfigured":{"name":"kPFErrorPushMisconfigured","abstract":"

    Push is misconfigured. See details to find out how.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorObjectTooLarge":{"name":"kPFErrorObjectTooLarge","abstract":"

    The object is too large.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorOperationForbidden":{"name":"kPFErrorOperationForbidden","abstract":"

    That operation isn’t allowed for clients.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorCacheMiss":{"name":"kPFErrorCacheMiss","abstract":"

    The results were not found in the cache.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidNestedKey":{"name":"kPFErrorInvalidNestedKey","abstract":"

    Keys in NSDictionary values may not include $ or ..

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidFileName":{"name":"kPFErrorInvalidFileName","abstract":"

    Invalid file name.","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidACL":{"name":"kPFErrorInvalidACL","abstract":"

    Invalid ACL. An ACL with an invalid format was saved. This should not happen if you use PFACL.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorTimeout":{"name":"kPFErrorTimeout","abstract":"

    The request timed out on the server. Typically this indicates the request is too expensive.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEmailAddress":{"name":"kPFErrorInvalidEmailAddress","abstract":"

    The email address was invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorDuplicateValue":{"name":"kPFErrorDuplicateValue","abstract":"

    A unique field was given a value that is already taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidRoleName":{"name":"kPFErrorInvalidRoleName","abstract":"

    Role’s name is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorExceededQuota":{"name":"kPFErrorExceededQuota","abstract":"

    Exceeded an application quota. Upgrade to resolve.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFScriptError":{"name":"kPFScriptError","abstract":"

    Cloud Code script had an error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFValidationError":{"name":"kPFValidationError","abstract":"

    Cloud Code validation failed.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorReceiptMissing":{"name":"kPFErrorReceiptMissing","abstract":"

    Product purchase receipt is missing.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidPurchaseReceipt":{"name":"kPFErrorInvalidPurchaseReceipt","abstract":"

    Product purchase receipt is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorPaymentDisabled":{"name":"kPFErrorPaymentDisabled","abstract":"

    Payment is disabled on this device.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidProductIdentifier":{"name":"kPFErrorInvalidProductIdentifier","abstract":"

    The product identifier is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductNotFoundInAppStore":{"name":"kPFErrorProductNotFoundInAppStore","abstract":"

    The product is not found in the App Store.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidServerResponse":{"name":"kPFErrorInvalidServerResponse","abstract":"

    The Apple server response is not valid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorProductDownloadFileSystemFailure":{"name":"kPFErrorProductDownloadFileSystemFailure","abstract":"

    Product fails to download due to file system error.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidImageData":{"name":"kPFErrorInvalidImageData","abstract":"

    Fail to convert data to image.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUnsavedFile":{"name":"kPFErrorUnsavedFile","abstract":"

    Unsaved file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorFileDeleteFailure":{"name":"kPFErrorFileDeleteFailure","abstract":"

    Fail to delete file.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorRequestLimitExceeded":{"name":"kPFErrorRequestLimitExceeded","abstract":"

    Application has exceeded its request limit.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidEventName":{"name":"kPFErrorInvalidEventName","abstract":"

    Invalid event name.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameMissing":{"name":"kPFErrorUsernameMissing","abstract":"

    Username is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserPasswordMissing":{"name":"kPFErrorUserPasswordMissing","abstract":"

    Password is missing or empty.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUsernameTaken":{"name":"kPFErrorUsernameTaken","abstract":"

    Username has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailTaken":{"name":"kPFErrorUserEmailTaken","abstract":"

    Email has already been taken.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserEmailMissing":{"name":"kPFErrorUserEmailMissing","abstract":"

    The email is missing, and must be specified.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserWithEmailNotFound":{"name":"kPFErrorUserWithEmailNotFound","abstract":"

    A user with the specified email was not found.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCannotBeAlteredWithoutSession":{"name":"kPFErrorUserCannotBeAlteredWithoutSession","abstract":"

    The user cannot be altered by a client without the session.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserCanOnlyBeCreatedThroughSignUp":{"name":"kPFErrorUserCanOnlyBeCreatedThroughSignUp","abstract":"

    Users can only be created through sign up.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorAccountAlreadyLinked":{"name":"kPFErrorAccountAlreadyLinked","abstract":"

    An existing account already linked to another user.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidSessionToken":{"name":"kPFErrorInvalidSessionToken","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorUserIdMismatch":{"name":"kPFErrorUserIdMismatch","abstract":"

    Error code indicating that the current session token is invalid.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorLinkedIdMissing":{"name":"kPFErrorLinkedIdMissing","abstract":"

    Linked id missing from request.

    ","parent_name":"PFErrorCode"},"Enums/PFErrorCode.html#/c:@E@PFErrorCode@kPFErrorInvalidLinkedSession":{"name":"kPFErrorInvalidLinkedSession","abstract":"

    Invalid linked session.

    ","parent_name":"PFErrorCode"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelNone":{"name":"PFLogLevelNone","abstract":"

    Log level that disables all logging.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelError":{"name":"PFLogLevelError","abstract":"

    Log level that if set is going to output error messages to the log.

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelWarning":{"name":"PFLogLevelWarning","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelInfo":{"name":"PFLogLevelInfo","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFLogLevel.html#/c:@E@PFLogLevel@PFLogLevelDebug":{"name":"PFLogLevelDebug","abstract":"

    Log level that if set is going to output the following messages to log:

    ","parent_name":"PFLogLevel"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyIgnoreCache":{"name":"kPFCachePolicyIgnoreCache","abstract":"

    The query does not load from the cache or save results to the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheOnly":{"name":"kPFCachePolicyCacheOnly","abstract":"

    The query only loads from the cache, ignoring the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkOnly":{"name":"kPFCachePolicyNetworkOnly","abstract":"

    The query does not load from the cache, but it will save results to the cache.

    ","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheElseNetwork":{"name":"kPFCachePolicyCacheElseNetwork","abstract":"

    The query first tries to load from the cache, but if that fails, it loads results from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyNetworkElseCache":{"name":"kPFCachePolicyNetworkElseCache","abstract":"

    The query first tries to load from the network, but if that fails, it loads results from the cache.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html#/c:@E@PFCachePolicy@kPFCachePolicyCacheThenNetwork":{"name":"kPFCachePolicyCacheThenNetwork","abstract":"

    The query first loads from the cache, then loads from the network.","parent_name":"PFCachePolicy"},"Enums/PFCachePolicy.html":{"name":"PFCachePolicy","abstract":"

    PFCachePolicy specifies different caching policies that could be used with PFQuery.

    "},"Enums/PFLogLevel.html":{"name":"PFLogLevel","abstract":"

    PFLogLevel enum specifies different levels of logging that could be used to limit or display more messages in logs.

    "},"Enums/PFErrorCode.html":{"name":"PFErrorCode","abstract":"

    PFErrorCode enum contains all custom error codes that are used as code for NSError for callbacks on all classes.

    "},"Constants.html#/c:@kPFDeviceType":{"name":"kPFDeviceType","abstract":"
    "},"Constants.html#/c:@PFParseErrorDomain":{"name":"PFParseErrorDomain","abstract":"

    Error domain used for all NSErrors in the SDK.

    "},"Constants.html#/c:@PFNetworkWillSendURLRequestNotification":{"name":"PFNetworkWillSendURLRequestNotification","abstract":"

    The name of the notification that is going to be sent before any URL request is sent.

    "},"Constants.html#/c:@PFNetworkDidReceiveURLResponseNotification":{"name":"PFNetworkDidReceiveURLResponseNotification","abstract":"

    The name of the notification that is going to be sent after any URL response is received.

    "},"Constants.html#/c:@PFInvalidSessionTokenNotification":{"name":"PFInvalidSessionTokenNotification","abstract":"

    The name of the notification that is going to be sent when any request is failing with an invalid session token.

    "},"Constants.html#/c:@PFNetworkNotificationURLRequestUserInfoKey":{"name":"PFNetworkNotificationURLRequestUserInfoKey","abstract":"

    The key of request(NSURLRequest) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseUserInfoKey":{"name":"PFNetworkNotificationURLResponseUserInfoKey","abstract":"

    The key of response(NSHTTPURLResponse) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFNetworkNotificationURLResponseBodyUserInfoKey":{"name":"PFNetworkNotificationURLResponseBodyUserInfoKey","abstract":"

    The key of repsonse body (usually NSString with JSON) in the userInfo dictionary of a notification.

    "},"Constants.html#/c:@PFObjectDefaultPin":{"name":"PFObjectDefaultPin","abstract":"

    The name of the default pin that for PFObject local data store.

    "},"Constants.html#/c:@PFParseInitializeDidCompleteNotification":{"name":"PFParseInitializeDidCompleteNotification","abstract":"

    For testing purposes. Allows testers to know when init is complete.

    "},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationId":{"name":"applicationId","abstract":"

    The Parse.com application id to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)clientKey":{"name":"clientKey","abstract":"

    The Parse.com client key to configure the SDK with.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)server":{"name":"server","abstract":"

    The URL of the server that is being used by the SDK.","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)fileUploadController":{"name":"fileUploadController","abstract":"

    The custom upload controller that synchronously uploads PFFiles using its own policy.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)localDatastoreEnabled":{"name":"localDatastoreEnabled","abstract":"

    Whether or not to enable pinning in the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)applicationGroupIdentifier":{"name":"applicationGroupIdentifier","abstract":"

    When set, enables data sharing with an application group identifier.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)containingApplicationBundleIdentifier":{"name":"containingApplicationBundleIdentifier","abstract":"

    When set, controls the bundle identifier of the parent bundle to connect to.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)URLSessionConfiguration":{"name":"URLSessionConfiguration","abstract":"

    The NSURLSessionConfiguration configuration used by the SDK.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(py)networkRetryAttempts":{"name":"networkRetryAttempts","abstract":"

    The maximum number of retry attempts to make upon a failed network request.

    ","parent_name":"ParseClientConfiguration"},"Classes/ParseClientConfiguration.html#/c:objc(cs)ParseClientConfiguration(cm)configurationWithBlock:":{"name":"+configurationWithBlock:","abstract":"

    Create a new SDK configuration object. This will create a temporarily modifiable configuration, and pass it to a block","parent_name":"ParseClientConfiguration"},"Classes/Parse.html#/c:objc(cs)Parse(cm)setApplicationId:clientKey:":{"name":"+setApplicationId:clientKey:","abstract":"

    Sets the applicationId and clientKey of your application.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)initializeWithConfiguration:":{"name":"+initializeWithConfiguration:","abstract":"

    Sets the configuration to be used for the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)currentConfiguration":{"name":"currentConfiguration","abstract":"

    Gets the current configuration in use by the Parse SDK.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)applicationId":{"name":"applicationId","abstract":"

    The current application id that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)clientKey":{"name":"clientKey","abstract":"

    The current client key that was used to configure Parse framework.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)server":{"name":"server","abstract":"

    The current server URL to connect to Parse Server.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableLocalDatastore":{"name":"+enableLocalDatastore","abstract":"

    Enable pinning in your application. This must be called before your application can use","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)isLocalDatastoreEnabled":{"name":"isLocalDatastoreEnabled","abstract":"

    Flag that indicates whether Local Datastore is enabled.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)enableDataSharingWithApplicationGroupIdentifier:containingApplication:":{"name":"+enableDataSharingWithApplicationGroupIdentifier:containingApplication:","abstract":"

    Enables data sharing with an application group identifier.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)applicationGroupIdentifierForDataSharing":{"name":"+applicationGroupIdentifierForDataSharing","abstract":"

    Application Group Identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cm)containingApplicationBundleIdentifierForDataSharing":{"name":"+containingApplicationBundleIdentifierForDataSharing","abstract":"

    Containing application bundle identifier for Data Sharing.

    ","parent_name":"Parse"},"Classes/Parse.html#/c:objc(cs)Parse(cpy)logLevel":{"name":"logLevel","abstract":"

    Gets or sets the level of logging to display.

    ","parent_name":"Parse"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)currentUser":{"name":"+currentUser","abstract":"

    Gets the currently logged in user from disk and returns an instance of it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)getCurrentUserInBackground":{"name":"+getCurrentUserInBackground","abstract":"

    Asynchronously loads the currently logged in user from disk and returns a task that encapsulates it.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)isNew":{"name":"isNew","abstract":"

    Whether the PFUser was just created from a request.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)authenticated":{"name":"authenticated","abstract":"

    Whether the user is an authenticated object for the device.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)user":{"name":"+user","abstract":"

    Creates a new PFUser object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableAutomaticUser":{"name":"+enableAutomaticUser","abstract":"

    Enables automatic creation of anonymous users.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)username":{"name":"username","abstract":"

    The username for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)password":{"name":"password","abstract":"

    !","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(py)email":{"name":"email","abstract":"

    The email for the PFUser.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackground":{"name":"-signUpInBackground","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithBlock:":{"name":"-signUpInBackgroundWithBlock:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:":{"name":"+logInWithUsernameInBackground:password:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:block:":{"name":"+logInWithUsernameInBackground:password:block:","abstract":"

    Makes an asynchronous request to log in a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:":{"name":"+becomeInBackground:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:block:":{"name":"+becomeInBackground:block:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackground":{"name":"+enableRevocableSessionInBackground","abstract":"

    Enables revocable sessions and migrates the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)enableRevocableSessionInBackgroundWithBlock:":{"name":"+enableRevocableSessionInBackgroundWithBlock:","abstract":"

    Enables revocable sessions and upgrades the currentUser session token to use revocable session if needed.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackground":{"name":"+logOutInBackground","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOutInBackgroundWithBlock:":{"name":"+logOutInBackgroundWithBlock:","abstract":"

    Asynchronously logs out the currently logged in user.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:":{"name":"+requestPasswordResetForEmailInBackground:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:block:":{"name":"+requestPasswordResetForEmailInBackground:block:","abstract":"

    Send a password reset request asynchronously for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)registerAuthenticationDelegate:forAuthType:":{"name":"+registerAuthenticationDelegate:forAuthType:","abstract":"

    Registers a third party authentication delegate. If a delegate is already registered for the authType then","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)unregisterAuthenticationDelegateForAuthType:":{"name":"+unregisterAuthenticationDelegateForAuthType:","abstract":"

    Unregisters a third party authentication delegate. If no delegate is registered, this fails gracefully.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithAuthTypeInBackground:authData:":{"name":"+logInWithAuthTypeInBackground:authData:","abstract":"

    Logs in a user with third party authentication credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)linkWithAuthTypeInBackground:authData:":{"name":"-linkWithAuthTypeInBackground:authData:","abstract":"

    Links this user to a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)unlinkWithAuthTypeInBackground:":{"name":"-unlinkWithAuthTypeInBackground:","abstract":"

    Unlinks this user from a third party authentication library.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)isLinkedWithAuthType:":{"name":"-isLinkedWithAuthType:","abstract":"

    Indicates whether this user is linked with a third party authentication library of a specific type.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUpInBackgroundWithTarget:selector:":{"name":"-signUpInBackgroundWithTarget:selector:","abstract":"

    Signs up the user asynchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsernameInBackground:password:target:selector:":{"name":"+logInWithUsernameInBackground:password:target:selector:","abstract":"

    Makes an asynchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)becomeInBackground:target:selector:":{"name":"+becomeInBackground:target:selector:","abstract":"

    Makes an asynchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmailInBackground:target:selector:":{"name":"+requestPasswordResetForEmailInBackground:target:selector:","abstract":"

    Send a password reset request asynchronously for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp":{"name":"-signUp","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(im)signUp:":{"name":"-signUp:","abstract":"

    Signs up the user synchronously.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:":{"name":"+logInWithUsername:password:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logInWithUsername:password:error:":{"name":"+logInWithUsername:password:error:","abstract":"

    Makes a synchronous request to login a user with specified credentials.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:":{"name":"+become:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)become:error:":{"name":"+become:error:","abstract":"

    Makes a synchronous request to become a user with the given session token.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)logOut":{"name":"+logOut","abstract":"

    Synchronously* logs out the currently logged in user on disk.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:":{"name":"+requestPasswordResetForEmail:","abstract":"

    Synchronously Send a password reset request for a specified email.

    ","parent_name":"PFUser"},"Classes/PFUser.html#/c:objc(cs)PFUser(cm)requestPasswordResetForEmail:error:":{"name":"+requestPasswordResetForEmail:error:","abstract":"

    Synchronously send a password reset request for a specified email and sets an error object.

    ","parent_name":"PFUser"},"Classes/PFSession.html#/c:objc(cs)PFSession(py)sessionToken":{"name":"sessionToken","abstract":"

    The session token string for this session.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackground":{"name":"+getCurrentSessionInBackground","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFSession.html#/c:objc(cs)PFSession(cm)getCurrentSessionInBackgroundWithBlock:":{"name":"+getCurrentSessionInBackgroundWithBlock:","abstract":"

    Asynchronously fetches a PFSession object related to the current user.

    ","parent_name":"PFSession"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:":{"name":"-initWithName:","abstract":"

    Constructs a new PFRole with the given name.","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(im)initWithName:acl:":{"name":"-initWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:":{"name":"+roleWithName:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(cm)roleWithName:acl:":{"name":"+roleWithName:acl:","abstract":"

    Constructs a new PFRole with the given name.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)name":{"name":"name","abstract":"

    Gets or sets the name for a role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)users":{"name":"users","abstract":"

    Gets the PFRelation for the PFUser objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRole.html#/c:objc(cs)PFRole(py)roles":{"name":"roles","abstract":"

    Gets the PFRelation for the PFRole objects that are direct children of this role.

    ","parent_name":"PFRole"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(py)targetClass":{"name":"targetClass","abstract":"

    The name of the class of the target child objects.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)query":{"name":"-query","abstract":"

    Returns a PFQuery object that can be used to get objects in this relation.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)addObject:":{"name":"-addObject:","abstract":"

    Adds a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFRelation.html#/c:objc(cs)PFRelation(im)removeObject:":{"name":"-removeObject:","abstract":"

    Removes a relation to the passed in object.

    ","parent_name":"PFRelation"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes the query with a class name.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:":{"name":"+queryWithClassName:","abstract":"

    Returns a PFQuery for a given class.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryWithClassName:predicate:":{"name":"+queryWithClassName:predicate:","abstract":"

    Creates a PFQuery with the constraints given by predicate.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name to query for.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKey:":{"name":"-includeKey:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeKeys:":{"name":"-includeKeys:","abstract":"

    Make the query include PFObjects that have a reference stored at the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)includeAll":{"name":"-includeAll","abstract":"

    Make the query include all PFObjects that have a reference.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKey:":{"name":"-excludeKey:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)excludeKeys:":{"name":"-excludeKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to exclude the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)selectKeys:":{"name":"-selectKeys:","abstract":"

    Make the query restrict the fields of the returned PFObjects to include only the provided keys.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyExists:":{"name":"-whereKeyExists:","abstract":"

    Add a constraint that requires a particular key exists.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKeyDoesNotExist:":{"name":"-whereKeyDoesNotExist:","abstract":"

    Add a constraint that requires a key not exist.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:equalTo:":{"name":"-whereKey:equalTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be equal to the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThan:":{"name":"-whereKey:lessThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object to be less than the provided object.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:lessThanOrEqualTo:":{"name":"-whereKey:lessThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThan:":{"name":"-whereKey:greaterThan:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:greaterThanOrEqualTo:":{"name":"-whereKey:greaterThanOrEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notEqualTo:":{"name":"-whereKey:notEqualTo:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesText:":{"name":"-whereKey:matchesText:","abstract":"

    Add a constraint for finding string values that contain a provided","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedIn:":{"name":"-whereKey:containedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:notContainedIn:":{"name":"-whereKey:notContainedIn:","abstract":"

    Add a constraint to the query that requires a particular key’s object","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsAllObjectsInArray:":{"name":"-whereKey:containsAllObjectsInArray:","abstract":"

    Add a constraint to the query that requires a particular key’s array","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containedBy:":{"name":"-whereKey:containedBy:","abstract":"

    Adds a constraint to the query that requires a particular key’s value to","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:":{"name":"-whereKey:nearGeoPoint:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinMiles:":{"name":"-whereKey:nearGeoPoint:withinMiles:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinKilometers:":{"name":"-whereKey:nearGeoPoint:withinKilometers:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint)","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:nearGeoPoint:withinRadians:":{"name":"-whereKey:nearGeoPoint:withinRadians:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be near","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinGeoBoxFromSouthwest:toNortheast:":{"name":"-whereKey:withinGeoBoxFromSouthwest:toNortheast:","abstract":"

    Add a constraint to the query that requires a particular key’s coordinates (specified via PFGeoPoint) be","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:withinPolygon:":{"name":"-whereKey:withinPolygon:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:polygonContains:":{"name":"-whereKey:polygonContains:","abstract":"

    Add a constraint to the query that requires a particular key’s","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:":{"name":"-whereKey:matchesRegex:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesRegex:modifiers:":{"name":"-whereKey:matchesRegex:modifiers:","abstract":"

    Add a regular expression constraint for finding string values that match the provided regular expression.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:containsString:":{"name":"-whereKey:containsString:","abstract":"

    Add a constraint for finding string values that contain a provided substring.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasPrefix:":{"name":"-whereKey:hasPrefix:","abstract":"

    Add a constraint for finding string values that start with a provided prefix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:hasSuffix:":{"name":"-whereKey:hasSuffix:","abstract":"

    Add a constraint for finding string values that end with a provided suffix.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)orQueryWithSubqueries:":{"name":"+orQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the or of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)andQueryWithSubqueries:":{"name":"+andQueryWithSubqueries:","abstract":"

    Returns a PFQuery that is the and of the passed in queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesKey:inQuery:":{"name":"-whereKey:matchesKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value matches a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchKey:inQuery:":{"name":"-whereKey:doesNotMatchKey:inQuery:","abstract":"

    Adds a constraint that requires that a key’s value NOT match a value in another key","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:matchesQuery:":{"name":"-whereKey:matchesQuery:","abstract":"

    Add a constraint that requires that a key’s value matches a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)whereKey:doesNotMatchQuery:":{"name":"-whereKey:doesNotMatchQuery:","abstract":"

    Add a constraint that requires that a key’s value to not match a PFQuery constraint.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByAscending:":{"name":"-orderByAscending:","abstract":"

    Sort the results in ascending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addAscendingOrder:":{"name":"-addAscendingOrder:","abstract":"

    Additionally sort in ascending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderByDescending:":{"name":"-orderByDescending:","abstract":"

    Sort the results in descending order with the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)addDescendingOrder:":{"name":"-addDescendingOrder:","abstract":"

    Additionally sort in descending order by the given key.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptor:":{"name":"-orderBySortDescriptor:","abstract":"

    Sort the results using a given sort descriptor.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)orderBySortDescriptors:":{"name":"-orderBySortDescriptors:","abstract":"

    Sort the results using a given array of sort descriptors.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:":{"name":"-getObjectInBackgroundWithId:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:block:":{"name":"-getObjectInBackgroundWithId:block:","abstract":"

    Gets a PFObject asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)queryForUser":{"name":"+queryForUser","abstract":"

    @deprecated Please use [PFUser query] instead.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackground":{"name":"-findObjectsInBackground","abstract":"

    Finds objects asynchronously and sets the NSArray of PFObject objects as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithBlock:":{"name":"-findObjectsInBackgroundWithBlock:","abstract":"

    Finds objects asynchronously and calls the given block with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackground":{"name":"-getFirstObjectInBackground","abstract":"

    Gets an object asynchronously and sets it as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithBlock:":{"name":"-getFirstObjectInBackgroundWithBlock:","abstract":"

    Gets an object asynchronously and calls the given block with the result.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackground":{"name":"-countObjectsInBackground","abstract":"

    Counts objects asynchronously and sets NSNumber with count as a result of the task.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithBlock:":{"name":"-countObjectsInBackgroundWithBlock:","abstract":"

    Counts objects asynchronously and calls the given block with the counts.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current network request (if any). Ensures that callbacks won’t be called.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)limit":{"name":"limit","abstract":"

    A limit on the number of objects to return. The default limit is 100, with a","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)skip":{"name":"skip","abstract":"

    The number of objects to skip before returning any.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)cachePolicy":{"name":"cachePolicy","abstract":"

    The cache policy to use for requests.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)maxCacheAge":{"name":"maxCacheAge","abstract":"

    The age after which a cached value will be ignored

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)hasCachedResult":{"name":"hasCachedResult","abstract":"

    Returns whether there is a cached result for this query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)clearCachedResult":{"name":"-clearCachedResult","abstract":"

    Clears the cached result for this query. If there is no cached result, this is a noop.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)clearAllCachedResults":{"name":"+clearAllCachedResults","abstract":"

    Clears the cached results for all queries.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromLocalDatastore":{"name":"-fromLocalDatastore","abstract":"

    Change the source of this query to all pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPin":{"name":"-fromPin","abstract":"

    Change the source of this query to the default group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)fromPinWithName:":{"name":"-fromPinWithName:","abstract":"

    Change the source of this query to a specific group of pinned objects.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)ignoreACLs":{"name":"-ignoreACLs","abstract":"

    Ignore ACLs when querying from the Local Datastore.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(py)trace":{"name":"trace","abstract":"

    Whether or not performance tracing should be done on the query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectInBackgroundWithId:target:selector:":{"name":"-getObjectInBackgroundWithId:target:selector:","abstract":"

    Gets a PFObject asynchronously.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjectsInBackgroundWithTarget:selector:":{"name":"-findObjectsInBackgroundWithTarget:selector:","abstract":"

    Finds objects asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObjectInBackgroundWithTarget:selector:":{"name":"-getFirstObjectInBackgroundWithTarget:selector:","abstract":"

    Gets an object asynchronously and calls the given callback with the results.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjectsInBackgroundWithTarget:selector:":{"name":"-countObjectsInBackgroundWithTarget:selector:","abstract":"

    Counts objects asynchronously and calls the given callback with the count.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:":{"name":"+getObjectOfClass:objectId:","abstract":"

    Returns a PFObject with a given class and id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getObjectOfClass:objectId:error:":{"name":"+getObjectOfClass:objectId:error:","abstract":"

    Returns a PFObject with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:":{"name":"-getObjectWithId:","abstract":"

    Returns a PFObject with the given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getObjectWithId:error:":{"name":"-getObjectWithId:error:","abstract":"

    Returns a PFObject with the given id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:":{"name":"+getUserObjectWithId:","abstract":"

    Returns a PFUser with a given id.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(cm)getUserObjectWithId:error:":{"name":"+getUserObjectWithId:error:","abstract":"

    Returns a PFUser with a given class and id and sets an error if necessary.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects":{"name":"-findObjects","abstract":"

    Finds objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)findObjects:":{"name":"-findObjects:","abstract":"

    Finds objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject":{"name":"-getFirstObject","abstract":"

    Gets an object synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)getFirstObject:":{"name":"-getFirstObject:","abstract":"

    Gets an object synchronously based on the constructed query and sets an error if any occurred.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects":{"name":"-countObjects","abstract":"

    Counts objects synchronously based on the constructed query.

    ","parent_name":"PFQuery"},"Classes/PFQuery.html#/c:objc(cs)PFQuery(im)countObjects:":{"name":"-countObjects:","abstract":"

    Counts objects synchronously based on the constructed query and sets an error if there was one.

    ","parent_name":"PFQuery"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)push":{"name":"+push","abstract":"
    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannel:":{"name":"-setChannel:","abstract":"

    Sets the channel on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setChannels:":{"name":"-setChannels:","abstract":"

    Sets the array of channels on which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setQuery:":{"name":"-setQuery:","abstract":"

    Sets an installation query to which this push notification will be sent.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setMessage:":{"name":"-setMessage:","abstract":"

    Sets an alert message for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setData:":{"name":"-setData:","abstract":"

    Sets an arbitrary data payload for this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToAndroid:":{"name":"-setPushToAndroid:","abstract":"

    Sets whether this push will go to Android devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)setPushToIOS:":{"name":"-setPushToIOS:","abstract":"

    Sets whether this push will go to iOS devices.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAtDate:":{"name":"-expireAtDate:","abstract":"

    Sets the expiration time for this notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)expireAfterTimeInterval:":{"name":"-expireAfterTimeInterval:","abstract":"

    Sets the time interval after which this notification should expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)clearExpiration":{"name":"-clearExpiration","abstract":"

    Clears both expiration values, indicating that the notification should never expire.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(py)pushDate":{"name":"pushDate","abstract":"

    Date at which to send this push notification.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:":{"name":"+sendPushMessageToChannelInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:block:":{"name":"+sendPushMessageToChannelInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:":{"name":"+sendPushMessageToQueryInBackground:withMessage:","abstract":"

    Asynchronously send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQueryInBackground:withMessage:block:":{"name":"+sendPushMessageToQueryInBackground:withMessage:block:","abstract":"

    Asynchronously sends a push message to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackground":{"name":"-sendPushInBackground","abstract":"

    Asynchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithBlock:":{"name":"-sendPushInBackgroundWithBlock:","abstract":"

    Asynchronously send this push message and executes the given callback block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:":{"name":"+sendPushDataToChannelInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:block:":{"name":"+sendPushDataToChannelInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a channel and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:":{"name":"+sendPushDataToQueryInBackground:withData:","abstract":"

    Asynchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQueryInBackground:withData:block:":{"name":"+sendPushDataToQueryInBackground:withData:block:","abstract":"

    Asynchronously sends a push message with arbitrary data to a query and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)handlePush:":{"name":"+handlePush:","abstract":"

    A default handler for push notifications while the app is active that","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)storeDeviceToken:":{"name":"+storeDeviceToken:","abstract":"

    Store the device token locally for push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackground":{"name":"+getSubscribedChannelsInBackground","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithBlock:":{"name":"+getSubscribedChannelsInBackgroundWithBlock:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:":{"name":"+subscribeToChannelInBackground:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:block:":{"name":"+subscribeToChannelInBackground:block:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:":{"name":"+unsubscribeFromChannelInBackground:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:block:":{"name":"+unsubscribeFromChannelInBackground:block:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given block.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannelInBackground:withMessage:target:selector:":{"name":"+sendPushMessageToChannelInBackground:withMessage:target:selector:","abstract":"

    Asynchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPushInBackgroundWithTarget:selector:":{"name":"-sendPushInBackgroundWithTarget:selector:","abstract":"

    Asynchronously send this push message and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannelInBackground:withData:target:selector:":{"name":"+sendPushDataToChannelInBackground:withData:target:selector:","abstract":"

    Asynchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannelsInBackgroundWithTarget:selector:":{"name":"+getSubscribedChannelsInBackgroundWithTarget:selector:","abstract":"

    Asynchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannelInBackground:target:selector:":{"name":"+subscribeToChannelInBackground:target:selector:","abstract":"

    Asynchronously subscribes the device to a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannelInBackground:target:selector:":{"name":"+unsubscribeFromChannelInBackground:target:selector:","abstract":"

    Asynchronously unsubscribes the device from a channel of push notifications and calls the given callback.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(im)sendPush:":{"name":"-sendPush:","abstract":"

    Synchronously send this push message.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToChannel:withMessage:error:":{"name":"+sendPushMessageToChannel:withMessage:error:","abstract":"

    Synchronously send a push message to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushMessageToQuery:withMessage:error:":{"name":"+sendPushMessageToQuery:withMessage:error:","abstract":"

    Send a push message to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToChannel:withData:error:":{"name":"+sendPushDataToChannel:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a channel.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)sendPushDataToQuery:withData:error:":{"name":"+sendPushDataToQuery:withData:error:","abstract":"

    Synchronously send a push message with arbitrary data to a query.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)getSubscribedChannels:":{"name":"+getSubscribedChannels:","abstract":"

    Synchronously get all the channels that this device is subscribed to.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)subscribeToChannel:error:":{"name":"+subscribeToChannel:error:","abstract":"

    Synchrnously subscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPush.html#/c:objc(cs)PFPush(cm)unsubscribeFromChannel:error:":{"name":"+unsubscribeFromChannel:error:","abstract":"

    Synchronously unsubscribes the device to a channel of push notifications.

    ","parent_name":"PFPush"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(cm)polygonWithCoordinates:":{"name":"+polygonWithCoordinates:","abstract":"

    Creates a new PFPolygon object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(im)containsPoint:":{"name":"-containsPoint:","abstract":"

    Test if this polygon contains a point

    ","parent_name":"PFPolygon"},"Classes/PFPolygon.html#/c:objc(cs)PFPolygon(py)coordinates":{"name":"coordinates","abstract":"

    Array of PFGeoPoints or CLLocations

    ","parent_name":"PFPolygon"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)initWithClassName:":{"name":"-initWithClassName:","abstract":"

    Initializes a new empty PFObject instance with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:":{"name":"+objectWithClassName:","abstract":"

    Creates a new PFObject with a class name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithClassName:dictionary:":{"name":"+objectWithClassName:dictionary:","abstract":"

    Creates a new PFObject with a class name, initialized with data","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithClassName:objectId:":{"name":"+objectWithoutDataWithClassName:objectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)parseClassName":{"name":"parseClassName","abstract":"

    The class name of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)objectId":{"name":"objectId","abstract":"

    The id of the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)updatedAt":{"name":"updatedAt","abstract":"

    When the object was last updated.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)createdAt":{"name":"createdAt","abstract":"

    When the object was created.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)ACL":{"name":"ACL","abstract":"

    The ACL for this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)allKeys":{"name":"allKeys","abstract":"

    Returns an array of the keys contained in this object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKey:":{"name":"-setObject:forKey:","abstract":"

    Sets the object associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectForKey:":{"name":"-removeObjectForKey:","abstract":"

    Unsets a key on the object.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)setObject:forKeyedSubscript:":{"name":"-setObject:forKeyedSubscript:","abstract":"

    Returns the value associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationForKey:":{"name":"-relationForKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)relationforKey:":{"name":"-relationforKey:","abstract":"

    Returns the instance of PFRelation class associated with the given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revert":{"name":"-revert","abstract":"

    Clears any changes to this object made since the last call to save and sets it back to the server state.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)revertObjectForKey:":{"name":"-revertObjectForKey:","abstract":"

    Clears any changes to this object’s key that were done after last successful save and sets it back to the","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObject:forKey:":{"name":"-addObject:forKey:","abstract":"

    Adds an object to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addObjectsFromArray:forKey:":{"name":"-addObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the end of the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObject:forKey:":{"name":"-addUniqueObject:forKey:","abstract":"

    Adds an object to the array associated with a given key, only if it is not already present in the array.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)addUniqueObjectsFromArray:forKey:":{"name":"-addUniqueObjectsFromArray:forKey:","abstract":"

    Adds the objects contained in another array to the array associated with a given key,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObject:forKey:":{"name":"-removeObject:forKey:","abstract":"

    Removes all occurrences of an object from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)removeObjectsInArray:forKey:":{"name":"-removeObjectsInArray:forKey:","abstract":"

    Removes all occurrences of the objects contained in another array from the array associated with a given key.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:":{"name":"-incrementKey:","abstract":"

    Increments the given key by 1.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)incrementKey:byAmount:":{"name":"-incrementKey:byAmount:","abstract":"

    Increments the given key by a number.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually":{"name":"-saveEventually","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveEventually:":{"name":"-saveEventually:","abstract":"

    Saves this object to the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:":{"name":"+saveAllInBackground:","abstract":"

    Saves a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:block:":{"name":"+saveAllInBackground:block:","abstract":"

    Saves a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:":{"name":"+deleteAllInBackground:","abstract":"

    Deletes a collection of objects all at once asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:block:":{"name":"+deleteAllInBackground:block:","abstract":"

    Deletes a collection of objects all at once asynchronously and executes the block when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Gets whether the PFObject has been fetched.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)isDataAvailableForKey:":{"name":"-isDataAvailableForKey:","abstract":"

    Checks whether the PFObject has data for given key

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackground":{"name":"-fetchInBackground","abstract":"

    Fetches the PFObject asynchronously and sets it as a result for the task.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithBlock:":{"name":"-fetchInBackgroundWithBlock:","abstract":"

    Fetches the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackground":{"name":"-fetchIfNeededInBackground","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithBlock:":{"name":"-fetchIfNeededInBackgroundWithBlock:","abstract":"

    Fetches the PFObject data asynchronously if dataAvailable is NO, then calls the callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:":{"name":"+fetchAllInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:block:":{"name":"+fetchAllInBackground:block:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:":{"name":"+fetchAllIfNeededInBackground:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:block:":{"name":"+fetchAllIfNeededInBackground:block:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackground":{"name":"-fetchFromLocalDatastoreInBackground","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastoreInBackgroundWithBlock:":{"name":"-fetchFromLocalDatastoreInBackgroundWithBlock:","abstract":"

    Asynchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackground":{"name":"-deleteInBackground","abstract":"

    Deletes the PFObject asynchronously.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithBlock:":{"name":"-deleteInBackgroundWithBlock:","abstract":"

    Deletes the PFObject asynchronously and executes the given callback block.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteEventually":{"name":"-deleteEventually","abstract":"

    Deletes this object from the server at some unspecified time in the future,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(py)dirty":{"name":"dirty","abstract":"

    Gets whether any key-value pair in this object (or its children)","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)isDirtyForKey:":{"name":"-isDirtyForKey:","abstract":"

    Get whether a value associated with a key has been added/updated/removed and not saved yet.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackground":{"name":"-pinInBackground","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithBlock:":{"name":"-pinInBackgroundWithBlock:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:":{"name":"-pinInBackgroundWithName:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinInBackgroundWithName:block:":{"name":"-pinInBackgroundWithName:block:","abstract":"

    Asynchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:":{"name":"+pinAllInBackground:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:block:":{"name":"+pinAllInBackground:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:":{"name":"+pinAllInBackground:withName:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAllInBackground:withName:block:":{"name":"+pinAllInBackground:withName:block:","abstract":"

    Asynchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackground":{"name":"-unpinInBackground","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithBlock:":{"name":"-unpinInBackgroundWithBlock:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:":{"name":"-unpinInBackgroundWithName:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinInBackgroundWithName:block:":{"name":"-unpinInBackgroundWithName:block:","abstract":"

    Asynchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackground":{"name":"+unpinAllObjectsInBackground","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithBlock:":{"name":"+unpinAllObjectsInBackgroundWithBlock:","abstract":"

    Asynchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:":{"name":"+unpinAllObjectsInBackgroundWithName:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsInBackgroundWithName:block:":{"name":"+unpinAllObjectsInBackgroundWithName:block:","abstract":"

    Asynchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:":{"name":"+unpinAllInBackground:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:block:":{"name":"+unpinAllInBackground:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:":{"name":"+unpinAllInBackground:withName:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllInBackground:withName:block:":{"name":"+unpinAllInBackground:withName:block:","abstract":"

    Asynchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAllInBackground:target:selector:":{"name":"+saveAllInBackground:target:selector:","abstract":"

    Saves a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)refreshInBackgroundWithTarget:selector:":{"name":"-refreshInBackgroundWithTarget:selector:","abstract":"

    Asynchronously refreshes the PFObject and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchInBackgroundWithTarget:selector:":{"name":"-fetchInBackgroundWithTarget:selector:","abstract":"

    Fetches the `PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeededInBackgroundWithTarget:selector:":{"name":"-fetchIfNeededInBackgroundWithTarget:selector:","abstract":"

    Fetches the PFObject’s data asynchronously if dataAvailable is NO, then calls the callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllInBackground:target:selector:":{"name":"+fetchAllInBackground:target:selector:","abstract":"

    Fetches all of the PFObject objects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeededInBackground:target:selector:":{"name":"+fetchAllIfNeededInBackground:target:selector:","abstract":"

    Fetches all of the PFObjects with the current data from the server asynchronously","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)deleteInBackgroundWithTarget:selector:":{"name":"-deleteInBackgroundWithTarget:selector:","abstract":"

    Deletes the PFObject asynchronously and calls the given callback.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAllInBackground:target:selector:":{"name":"+deleteAllInBackground:target:selector:","abstract":"

    Deletes a collection of objects all at once asynchronously and calls a callback when done.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)object":{"name":"+object","abstract":"

    Creates an instance of the registered subclass with this class’s PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)objectWithoutDataWithObjectId:":{"name":"+objectWithoutDataWithObjectId:","abstract":"

    Creates a reference to an existing PFObject for use in creating associations between PFObjects.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)registerSubclass":{"name":"+registerSubclass","abstract":"

    Registers an Objective-C class for Parse to use for representing a given Parse class.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)query":{"name":"+query","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)queryWithPredicate:":{"name":"+queryWithPredicate:","abstract":"

    Returns a query for objects of type PFSubclassing.+parseClassName with a given predicate.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save":{"name":"-save","abstract":"

    Synchronously saves the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)save:":{"name":"-save:","abstract":"

    Synchronously saves the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:":{"name":"+saveAll:","abstract":"

    Saves a collection of objects *synchronously all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)saveAll:error:":{"name":"+saveAll:error:","abstract":"

    Saves a collection of objects synchronously all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch":{"name":"-fetch","abstract":"

    Synchronously* fetches the PFObject with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetch:":{"name":"-fetch:","abstract":"

    Synchronously fetches the PFObject with the current data from the server and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded":{"name":"-fetchIfNeeded","abstract":"

    Synchronously* fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchIfNeeded:":{"name":"-fetchIfNeeded:","abstract":"

    Synchronously fetches the PFObject data from the server if dataAvailable is NO.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:":{"name":"+fetchAll:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAll:error:":{"name":"+fetchAll:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:":{"name":"+fetchAllIfNeeded:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)fetchAllIfNeeded:error:":{"name":"+fetchAllIfNeeded:error:","abstract":"

    Synchronously fetches all of the PFObject objects with the current data from the server","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore":{"name":"-fetchFromLocalDatastore","abstract":"

    Synchronously loads data from the local datastore into this object,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)fetchFromLocalDatastore:":{"name":"-fetchFromLocalDatastore:","abstract":"

    Synchronously loads data from the local datastore into this object, if it has not been fetched","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete":{"name":"-delete","abstract":"

    Synchronously deletes the PFObject.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)delete:":{"name":"-delete:","abstract":"

    Synchronously deletes the PFObject and sets an error if it occurs.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:":{"name":"+deleteAll:","abstract":"

    Synchronously deletes a collection of objects all at once.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)deleteAll:error:":{"name":"+deleteAll:error:","abstract":"

    Synchronously deletes a collection of objects all at once and sets an error if necessary.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin":{"name":"-pin","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pin:":{"name":"-pin:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:":{"name":"-pinWithName:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)pinWithName:error:":{"name":"-pinWithName:error:","abstract":"

    Synchronously stores the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:":{"name":"+pinAll:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:error:":{"name":"+pinAll:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:":{"name":"+pinAll:withName:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)pinAll:withName:error:":{"name":"+pinAll:withName:error:","abstract":"

    Synchronously stores the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin":{"name":"-unpin","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpin:":{"name":"-unpin:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:":{"name":"-unpinWithName:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(im)unpinWithName:error:":{"name":"-unpinWithName:error:","abstract":"

    Synchronously removes the object and every object it points to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects":{"name":"+unpinAllObjects","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjects:":{"name":"+unpinAllObjects:","abstract":"

    Synchronously removes all objects in the local datastore","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:":{"name":"+unpinAllObjectsWithName:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAllObjectsWithName:error:":{"name":"+unpinAllObjectsWithName:error:","abstract":"

    Synchronously removes all objects with the specified pin name.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:":{"name":"+unpinAll:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:error:":{"name":"+unpinAll:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively,","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:":{"name":"+unpinAll:withName:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFObject.html#/c:objc(cs)PFObject(cm)unpinAll:withName:error:":{"name":"+unpinAll:withName:error:","abstract":"

    Synchronously removes the objects and every object they point to in the local datastore, recursively.

    ","parent_name":"PFObject"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)currentInstallation":{"name":"+currentInstallation","abstract":"

    Gets the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)getCurrentInstallationInBackground":{"name":"+getCurrentInstallationInBackground","abstract":"

    Asynchronously loads the currently-running installation from disk and returns an instance of it.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceType":{"name":"deviceType","abstract":"

    The device type for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)installationId":{"name":"installationId","abstract":"

    The installationId for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)deviceToken":{"name":"deviceToken","abstract":"

    The device token for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)badge":{"name":"badge","abstract":"

    The badge for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)timeZone":{"name":"timeZone","abstract":"

    The name of the time zone for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(py)channels":{"name":"channels","abstract":"

    The channels for the PFInstallation.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(im)setDeviceTokenFromData:":{"name":"-setDeviceTokenFromData:","abstract":"

    Sets the device token string property from an NSData-encoded token.

    ","parent_name":"PFInstallation"},"Classes/PFInstallation.html#/c:objc(cs)PFInstallation(cm)query":{"name":"+query","abstract":"

    Creates a PFQuery for PFInstallation objects.

    ","parent_name":"PFInstallation"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPoint":{"name":"+geoPoint","abstract":"

    Create a PFGeoPoint object. Latitude and longitude are set to 0.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLocation:":{"name":"+geoPointWithLocation:","abstract":"

    Creates a new PFGeoPoint object for the given CLLocation, set to the location’s coordinates.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointWithLatitude:longitude:":{"name":"+geoPointWithLatitude:longitude:","abstract":"

    Create a new PFGeoPoint object with the specified latitude and longitude.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(cm)geoPointForCurrentLocationInBackground:":{"name":"+geoPointForCurrentLocationInBackground:","abstract":"

    Fetches the current device location and executes a block with a new PFGeoPoint object.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)latitude":{"name":"latitude","abstract":"

    Latitude of point in degrees. Valid range is from -90.0 to 90.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(py)longitude":{"name":"longitude","abstract":"

    Longitude of point in degrees. Valid range is from -180.0 to 180.0.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInRadiansTo:":{"name":"-distanceInRadiansTo:","abstract":"

    Get distance in radians from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInMilesTo:":{"name":"-distanceInMilesTo:","abstract":"

    Get distance in miles from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFGeoPoint.html#/c:objc(cs)PFGeoPoint(im)distanceInKilometersTo:":{"name":"-distanceInKilometersTo:","abstract":"

    Get distance in kilometers from this point to specified point.

    ","parent_name":"PFGeoPoint"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)init":{"name":"-init","abstract":"
    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:":{"name":"+fileObjectWithData:","abstract":"

    Creates a file with given data. A name will be assigned to it by the server.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:":{"name":"+fileObjectWithName:data:","abstract":"

    Creates a file with given data and name.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:":{"name":"+fileObjectWithName:contentsAtPath:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:contentsAtPath:error:":{"name":"+fileObjectWithName:contentsAtPath:error:","abstract":"

    Creates a file with the contents of another file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:":{"name":"+fileObjectWithName:data:contentType:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithName:data:contentType:error:":{"name":"+fileObjectWithName:data:contentType:error:","abstract":"

    Creates a file with given data, name and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)fileObjectWithData:contentType:":{"name":"+fileObjectWithData:contentType:","abstract":"

    Creates a file with given data and content type.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)name":{"name":"name","abstract":"

    The name of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)url":{"name":"url","abstract":"

    The url of the file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dirty":{"name":"dirty","abstract":"

    Whether the file has been uploaded for the first time.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackground":{"name":"-saveInBackground","abstract":"

    Saves the file asynchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithProgressBlock:":{"name":"-saveInBackgroundWithProgressBlock:","abstract":"

    Saves the file asynchronously

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:":{"name":"-saveInBackgroundWithBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithBlock:progressBlock:":{"name":"-saveInBackgroundWithBlock:progressBlock:","abstract":"

    Saves the file asynchronously and executes the given block.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(py)dataAvailable":{"name":"dataAvailable","abstract":"

    Whether the data is available in memory or needs to be downloaded.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackground":{"name":"-getDataInBackground","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithProgressBlock:":{"name":"-getDataInBackgroundWithProgressBlock:","abstract":"

    This method is like -getData but it fetches asynchronously to avoid blocking the current thread.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackground":{"name":"-getDataStreamInBackground","abstract":"

    This method is like -getDataInBackground but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackground":{"name":"-getDataDownloadStreamInBackground","abstract":"

    This method is like -getDataStreamInBackground, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithProgressBlock:":{"name":"-getDataStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataInBackground but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataDownloadStreamInBackgroundWithProgressBlock:":{"name":"-getDataDownloadStreamInBackgroundWithProgressBlock:","abstract":"

    This method is like -getDataStreamInBackgroundWithProgressBlock:, but yields a live-updating stream.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:":{"name":"-getDataInBackgroundWithBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:":{"name":"-getDataStreamInBackgroundWithBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock: but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithBlock:progressBlock:":{"name":"-getDataInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStreamInBackgroundWithBlock:progressBlock:":{"name":"-getDataStreamInBackgroundWithBlock:progressBlock:","abstract":"

    This method is like -getDataInBackgroundWithBlock:progressBlock: but avoids","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackground":{"name":"-getFilePathInBackground","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithProgressBlock:":{"name":"-getFilePathInBackgroundWithProgressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:":{"name":"-getFilePathInBackgroundWithBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getFilePathInBackgroundWithBlock:progressBlock:":{"name":"-getFilePathInBackgroundWithBlock:progressBlock:","abstract":"

    Asynchronously gets the file path for file from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)cancel":{"name":"-cancel","abstract":"

    Cancels the current request (upload or download of file).

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)clearCachedDataInBackground":{"name":"-clearCachedDataInBackground","abstract":"

    Clears all cached data for this file.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(cm)clearAllCachedDataInBackground":{"name":"+clearAllCachedDataInBackground","abstract":"

    Clears all cached data for all downloaded files.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)saveInBackgroundWithTarget:selector:":{"name":"-saveInBackgroundWithTarget:selector:","abstract":"

    Saves the file asynchronously and invokes the given selector on a target.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataInBackgroundWithTarget:selector:":{"name":"-getDataInBackgroundWithTarget:selector:","abstract":"

    Asynchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save":{"name":"-save","abstract":"

    Saves the file synchronously.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)save:":{"name":"-save:","abstract":"

    Saves the file synchronously and sets an error if it occurs.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData":{"name":"-getData","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getData:":{"name":"-getData:","abstract":"

    Synchronously gets the data from cache if available or fetches its contents from the network.","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream":{"name":"-getDataStream","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFFileObject.html#/c:objc(cs)PFFileObject(im)getDataStream:":{"name":"-getDataStream:","abstract":"

    This method is like -getData but avoids ever holding the entire PFFileObject contents in memory at once.

    ","parent_name":"PFFileObject"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)currentConfig":{"name":"+currentConfig","abstract":"

    Returns the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getCurrentConfigInBackground":{"name":"+getCurrentConfigInBackground","abstract":"

    Returns the task that encapsulates the most recently fetched config.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackground":{"name":"+getConfigInBackground","abstract":"

    Gets the PFConfig asynchronously and sets it as a result of a task.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfigInBackgroundWithBlock:":{"name":"+getConfigInBackgroundWithBlock:","abstract":"

    Gets the PFConfig asynchronously and executes the given callback block.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKey:":{"name":"-objectForKey:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"

    Returns the object associated with a given key.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig":{"name":"+getConfig","abstract":"

    Gets the PFConfig object synchronously from the server.

    ","parent_name":"PFConfig"},"Classes/PFConfig.html#/c:objc(cs)PFConfig(cm)getConfig:":{"name":"+getConfig:","abstract":"

    Gets the PFConfig object synchronously from the server and sets an error if it occurs.

    ","parent_name":"PFConfig"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:":{"name":"+callFunctionInBackground:withParameters:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:block:":{"name":"+callFunctionInBackground:withParameters:block:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunctionInBackground:withParameters:target:selector:":{"name":"+callFunctionInBackground:withParameters:target:selector:","abstract":"

    Calls the given cloud function asynchronously with the parameters provided","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:":{"name":"+callFunction:withParameters:","abstract":"

    Calls the given cloud function synchronously with the parameters provided.

    ","parent_name":"PFCloud"},"Classes/PFCloud.html#/c:objc(cs)PFCloud(cm)callFunction:withParameters:error:":{"name":"+callFunction:withParameters:error:","abstract":"

    Calls the given cloud function synchronously with the parameters provided and","parent_name":"PFCloud"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInInBackground":{"name":"+logInInBackground","abstract":"

    Creates an anonymous user asynchronously and sets as a result to BFTask.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithBlock:":{"name":"+logInWithBlock:","abstract":"

    Creates an anonymous user asynchronously and performs a provided block.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)isLinkedWithUser:":{"name":"+isLinkedWithUser:","abstract":"

    Whether the PFUser object is logged in anonymously.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnonymousUtils.html#/c:objc(cs)PFAnonymousUtils(cm)logInWithTarget:selector:":{"name":"+logInWithTarget:selector:","abstract":"

    Creates an anonymous user asynchronously and invokes a selector on a target.

    ","parent_name":"PFAnonymousUtils"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptions:":{"name":"+trackAppOpenedWithLaunchOptions:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithLaunchOptionsInBackground:block:":{"name":"+trackAppOpenedWithLaunchOptionsInBackground:block:","abstract":"

    Tracks this application being launched.","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayload:":{"name":"+trackAppOpenedWithRemoteNotificationPayload:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackAppOpenedWithRemoteNotificationPayloadInBackground:block:":{"name":"+trackAppOpenedWithRemoteNotificationPayloadInBackground:block:","abstract":"

    Tracks this application being launched. If this happened as the result of the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:":{"name":"+trackEvent:","abstract":"

    Tracks the occurrence of a custom event.

    ","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:block:":{"name":"+trackEventInBackground:block:","abstract":"

    Tracks the occurrence of a custom event. Parse will store a data point at the","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEvent:dimensions:":{"name":"+trackEvent:dimensions:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFAnalytics.html#/c:objc(cs)PFAnalytics(cm)trackEventInBackground:dimensions:block:":{"name":"+trackEventInBackground:dimensions:block:","abstract":"

    Tracks the occurrence of a custom event with additional dimensions. Parse will","parent_name":"PFAnalytics"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACL":{"name":"+ACL","abstract":"

    Creates an ACL with no permissions granted.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)ACLWithUser:":{"name":"+ACLWithUser:","abstract":"

    Creates an ACL where only the provided user has access.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicReadAccess":{"name":"publicReadAccess","abstract":"

    Controls whether the public is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(py)publicWriteAccess":{"name":"publicWriteAccess","abstract":"

    Controls whether the public is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUserId:":{"name":"-setReadAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUserId:":{"name":"-getReadAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUserId:":{"name":"-setWriteAccess:forUserId:","abstract":"

    Set whether the given user id is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUserId:":{"name":"-getWriteAccessForUserId:","abstract":"

    Gets whether the given user id is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forUser:":{"name":"-setReadAccess:forUser:","abstract":"

    Set whether the given user is allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForUser:":{"name":"-getReadAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forUser:":{"name":"-setWriteAccess:forUser:","abstract":"

    Set whether the given user is allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForUser:":{"name":"-getWriteAccessForUser:","abstract":"

    Gets whether the given user is explicitly allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRoleWithName:":{"name":"-getReadAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRoleWithName:":{"name":"-setReadAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRoleWithName:":{"name":"-getWriteAccessForRoleWithName:","abstract":"

    Get whether users belonging to the role with the given name are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRoleWithName:":{"name":"-setWriteAccess:forRoleWithName:","abstract":"

    Set whether users belonging to the role with the given name are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getReadAccessForRole:":{"name":"-getReadAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to read this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setReadAccess:forRole:":{"name":"-setReadAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to read this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)getWriteAccessForRole:":{"name":"-getWriteAccessForRole:","abstract":"

    Get whether users belonging to the given role are allowed to write this object.","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(im)setWriteAccess:forRole:":{"name":"-setWriteAccess:forRole:","abstract":"

    Set whether users belonging to the given role are allowed to write this object.

    ","parent_name":"PFACL"},"Classes/PFACL.html#/c:objc(cs)PFACL(cm)setDefaultACL:withAccessForCurrentUser:":{"name":"+setDefaultACL:withAccessForCurrentUser:","abstract":"

    Sets a default ACL that will be applied to all instances of PFObject when they are created.

    ","parent_name":"PFACL"},"Classes/PFACL.html":{"name":"PFACL","abstract":"

    The PFACL class is used to control which users can access or modify a particular object."},"Classes/PFAnalytics.html":{"name":"PFAnalytics","abstract":"

    PFAnalytics provides an interface to Parse’s logging and analytics backend.

    "},"Classes/PFAnonymousUtils.html":{"name":"PFAnonymousUtils","abstract":"

    Provides utility functions for working with Anonymously logged-in users."},"Classes/PFCloud.html":{"name":"PFCloud","abstract":"

    The PFCloud class provides methods for interacting with Parse Cloud Functions.

    "},"Classes/PFConfig.html":{"name":"PFConfig","abstract":"

    PFConfig is a representation of the remote configuration object."},"Classes.html#/c:objc(cs)PFOfflineDecoder":{"name":"PFOfflineDecoder","abstract":"

    Extends the normal JSON to PFObject decoding to also deal with placeholders for new objects"},"Classes.html#/c:objc(cs)PFKnownParseObjectDecoder":{"name":"PFKnownParseObjectDecoder","abstract":"

    A subclass of PFDecoder which can keep PFObject that has been fetched instead of creating a new instance.

    "},"Classes.html#/c:objc(cs)PFEncoder":{"name":"PFEncoder","abstract":"
    "},"Classes.html#/c:objc(cs)PFNoObjectEncoder":{"name":"PFNoObjectEncoder","abstract":"

    Encoding strategy that rejects PFObject.

    "},"Classes.html#/c:objc(cs)PFPointerOrLocalIdObjectEncoder":{"name":"PFPointerOrLocalIdObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId or with localId.

    "},"Classes.html#/c:objc(cs)PFPointerObjectEncoder":{"name":"PFPointerObjectEncoder","abstract":"

    Encoding strategy that encodes PFObject to PFPointer with objectId and rejects"},"Classes.html#/c:objc(cs)PFOfflineObjectEncoder":{"name":"PFOfflineObjectEncoder","abstract":"

    Encoding strategy that can encode objects that are available offline. After using this encoder,"},"Classes/PFFileObject.html":{"name":"PFFileObject","abstract":"

    PFFileObject representes a file of binary data stored on the Parse servers."},"Classes.html#/c:objc(cs)PFFile":{"name":"PFFile","abstract":"

    PFFile was renamed to PFFileObject."},"Classes.html#/c:objc(cs)PFFileUploadResult":{"name":"PFFileUploadResult","abstract":"

    Response provided by a custom PFFileUploadController.

    "},"Classes/PFGeoPoint.html":{"name":"PFGeoPoint","abstract":"

    PFGeoPoint may be used to embed a latitude / longitude point as the value for a key in a PFObject."},"Classes/PFInstallation.html":{"name":"PFInstallation","abstract":"

    A Parse Framework Installation Object that is a local representation of an"},"Classes/PFObject.html":{"name":"PFObject","abstract":"

    The PFObject class is a local representation of data persisted to the Parse cloud."},"Classes/PFPolygon.html":{"name":"PFPolygon","abstract":"

    PFPolygon may be used to embed a latitude / longitude points as the value for a key in a PFObject."},"Classes/PFPush.html":{"name":"PFPush","abstract":"

    The PFPush class defines a push notification that can be sent from a client device.

    "},"Classes/PFQuery.html":{"name":"PFQuery","abstract":"

    The PFQuery class defines a query that is used to query for PFObjects.

    "},"Classes/PFRelation.html":{"name":"PFRelation","abstract":"

    The PFRelation class that is used to access all of the children of a many-to-many relationship."},"Classes/PFRole.html":{"name":"PFRole","abstract":"

    The PFRole class represents a Role on the Parse server."},"Classes/PFSession.html":{"name":"PFSession","abstract":"

    PFSession is a local representation of a session."},"Classes/PFUser.html":{"name":"PFUser","abstract":"

    The PFUser class is a local representation of a user persisted to the Parse Data."},"Classes/Parse.html":{"name":"Parse","abstract":"

    The Parse class contains static functions that handle global configuration for the Parse framework.

    "},"Classes/ParseClientConfiguration.html":{"name":"ParseClientConfiguration","abstract":"

    The ParseClientConfiguration represents the local configuration of the SDK to connect to the server with.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Type%20Definitions.html":{"name":"Type Definitions","abstract":"

    The following type definitions are available globally.

    "}} \ No newline at end of file diff --git a/api/undocumented.json b/api/undocumented.json index 94b7f7d9c..111885e3f 100644 --- a/api/undocumented.json +++ b/api/undocumented.json @@ -1,68 +1,5 @@ { "warnings": [ - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFCancellationToken.h", - "line": 20, - "symbol": "BFCancellationBlock", - "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFCancellationToken.h", - "line": 27, - "symbol": "BFCancellationToken", - "symbol_kind": "sourcekitten.source.lang.objc.decl.class", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFCancellationTokenRegistration.h", - "line": 19, - "symbol": "BFCancellationTokenRegistration", - "symbol_kind": "sourcekitten.source.lang.objc.decl.class", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFGeneric.h", - "line": 25, - "symbol": "BFVoid", - "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFTask.h", - "line": 21, - "symbol": "BFTaskErrorDomain", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFTask.h", - "line": 26, - "symbol": "kBFMultipleErrorsError", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFTask.h", - "line": 32, - "symbol": "BFTaskMultipleErrorsUserInfoKey", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFTask.h", - "line": 42, - "symbol": "BFTask", - "symbol_kind": "sourcekitten.source.lang.objc.decl.class", - "warning": "undocumented" - }, - { - "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Bolts/BFTask.h", - "line": 47, - "symbol": "BFContinuationBlock", - "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", - "warning": "undocumented" - }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConfig.h", "line": 24, @@ -72,84 +9,84 @@ }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 361, + "line": 349, "symbol": "PFBooleanResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 362, + "line": 350, "symbol": "PFIntegerResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 363, + "line": 351, "symbol": "PFArrayResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 364, + "line": 352, "symbol": "PFObjectResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 365, + "line": 353, "symbol": "PFSetResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 366, + "line": 354, "symbol": "PFUserResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 367, + "line": 355, "symbol": "PFDataResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 368, + "line": 356, "symbol": "PFDataStreamResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 369, + "line": 357, "symbol": "PFFilePathResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 370, + "line": 358, "symbol": "PFStringResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 371, + "line": 359, "symbol": "PFIdResultBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented" }, { "file": "/Users/runner/work/Parse-SDK-iOS-OSX/Parse-SDK-iOS-OSX/Parse/Parse/Source/PFConstants.h", - "line": 372, + "line": 360, "symbol": "PFProgressBlock", "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef", "warning": "undocumented"

    H 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